diff options
author | Lance <Lance@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-06-16 07:07:02 +0000 |
---|---|---|
committer | Lance <Lance@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-06-16 07:07:02 +0000 |
commit | e4bb98fd9afd36dcd42a4135a55ad8930e2acf01 (patch) | |
tree | 8b5552dd23c5deb96e1d3580d1a18e46fb33d482 | |
parent | fcf1a52c02ff9d5cf5d8af6388b9833345509ec3 (diff) | |
download | hercules-e4bb98fd9afd36dcd42a4135a55ad8930e2acf01.tar.gz hercules-e4bb98fd9afd36dcd42a4135a55ad8930e2acf01.tar.bz2 hercules-e4bb98fd9afd36dcd42a4135a55ad8930e2acf01.tar.xz hercules-e4bb98fd9afd36dcd42a4135a55ad8930e2acf01.zip |
* [Fixed]:
- intif_parse_RenamePetOk for not compatible with ANSI-C initialzation specification.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7199 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 2089 | ||||
-rw-r--r-- | src/map/intif.c | 2 | ||||
-rw-r--r-- | src/map/npc.c | 3 |
3 files changed, 1049 insertions, 1045 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index fa1206496..03306db9b 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -1,1043 +1,1046 @@ -Date Added - -AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK. -IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. - -2006/06/15 - * Added indexes for loginlog and ipbanlist as they did not have any. - (note, someone already put the index on loginlog on trunk.) [Euph] - * Merged Adam's patch to let the char-server handle validation of - pet-name-change requests through the allowed char letters config. [Skotlex] - * Fixed "wedding_ignore_palette: yes" not working when relogging with the - gear already equipped. [Skotlex] - * Added blocking of the Kick skills when you are a Soul Linker. [Skotlex] - * Added enabling to turn off a kick-stance regardless of class. [Skotlex] - * Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas - options. [Skotlex] - * Added back OPTION_XMAS, but the actual value is missing! [Skotlex] - * Corrected chrif_save so that the player is not set offline on map-change. - [Skotlex] - * Added change-look support in pc_setoption when specifying OPTION_XMAS - [Skotlex] - * Fixed clif_parse_RemoveOption removing all options instead of just - Falcon/Cart/Peco [Skotlex] - * Fixed clif_send not sending packets to SELF when specifying AREA if the - source is not on the map yet. [Skotlex] - * Fixed and cleaned up script command 'equip' [Skotlex] - * Fixed 'autoequip' items. [Skotlex] - * Fixed Aspd not being updated in your status window after Agi/Dex - increasing statuses take effect. [Skotlex] -2006/06/14 - * Fixed map_nick2sd so that searching for "Adam" will not match a char - named "Adam Smith". Thanks to Adam for reporting it out. [Skotlex] - * Modified how luk reduces status changes by reducing the gap. Eg: resist = - vit; resist += (max - resist)*luk/300; [Skotlex] - * Added battle settings pc_max_sc_luk/mob_max_sc_luk to handle which is the - luk threshold at which you gain inmunity (defaults to 300). [Skotlex] - * Fixed buildin_getmobdata. It was trying to handle the first parameter as the - array to fill in. [blackhole89] - * Blocked again skill usage during marionette. [Skotlex] - * Fixed main.sql adding a key on char_id rather than account_id for the - char table. [Skotlex] - * Cleaned up character saving in char-sql, it no longer needs to query the - database to see if the player exists on each char-save, instead it checks - the received data against the online-players db. No such fix is required - for char-txt. [Skotlex] - * Added an error message on the char-server when the received player data - size does not matches with the expected size (should avoid the crash that - happens on such a memcpy). [Skotlex] - * [Improved]: - - script_save_mapreg for MapregSQL Saving to display perfomance only in slow - queries. [Lance] -2006/06/13 - * Updated mob_db.sql and item_db.sql to latest. [Skotlex] - * Added account_id index to char table. Thanks to Buuyo for reporting it. - Sql users apply upgrade_svn7146.sql NOW. [Skotlex] - * Marionette and Devotion will now check raw distance and ignore obstacles - and the like. [Skotlex] - * Added irc_channel_pass setting and prevent crashing when irc server - lookup by host fails. Thanks to Trancid for the details. [Skotlex] - * [Fixed]: - - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping. - [Lance] - * Added support for reading correctly status change data from Guild and - Homun skills. [Skotlex] - * Added support for reading Homun skill data (which means the HM skills are - now safe to add to skill_db, skill_require_db, etc) [Skotlex] - * Oppositions can't be made during WoE now. [Skotlex] - * Fixed a few compiler warnings from VC [Skotlex] - * Commented out the Homunculus Skills<->Status Change link which was - causing some memory corruptions. [Skotlex] -2006/06/12 - * [Fixed]: - - buildin_npcshopitem not allocating extra 1 block of terminator. - [Added]: - - Modified versions of Dj-Yhn's buildin_npcshopdelitem and buildin_npcshopadditem - [Lance] - * Updated clif_disp_onlyself to not use dynamic memory and write directly - to the player's buffer. [Skotlex] - * Updated @noask to also tell the user what he has just rejected (added - msg_athena entries for each of the different requests). Also updated it to - use clif_disp_onlyself. [Skotlex] - * Fixed a pair of missing initializers in the clif storage functions. - [Skotlex] - * @heal no longer displays a healing animation. Fixes the client believing - you couldn't be healed more than 32K. [Skotlex] - * Now you can use any skills (except encore/dancing ones) while under - Longing for Freeding. [Skotlex] - * Now you can use any skills while under Marionette Control. [Skotlex] - * Fixed npc_checknear's distance check returning the opposite of what it - should (false when the range is correct and viceversa) [Skotlex] - * Added a warning on item loading when an item is of equippable type but - has no equippable position. [Skotlex] - * Turning an alliance to an opposition won't work now during WoE [Skotlex] - * Slaves can summon other mobs now. The only ones who can't do this are - player summoned mobs. [Skotlex] - * Merged the following functions for faster processing of items: [Skotlex] - clif_storageitemlist + clif_storageequiplist = clif_storagelist - clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist - clif_itemlist + clif_equiplist = clif_inventorylist - Note that the changes are a bit substantial and need proper testing! - * Increased max knockback value support to 25. [Skotlex] - * [Optimized]: - - buildin_npcshopitem memory allocation to calculate before reallocating. - [Lance] - * Made guild member exp an unsigned int. [Skotlex] - * Various cleanups to the npc clicking related functions. Should fix quite - some possible crashes from crafted packets. [Skotlex] - * Added overflow checks for bonus settings mdef_rate/def_rate. [Skotlex] - * Added missing update of INT after a buf. [Skotlex] - * Small cleanup of how SC_BLEEDING works. [Skotlex] - * Fixed party_foreach_samemap invoking the function on the CASTER instead - of on the party members. [Skotlex] - * 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) [Skotlex] -2006/06/09 - * [Fixed] - - Compilation warnings on guild.c and int_guild.c [Lance] - * Added structure party_data and party_member_data to the map server to - hold party-specific required information about parties including - Monk/TK/SG/SN states and party member count. Family information is still - missing, and handling of the state should probably be done by the - char-server, too... [Skotlex] - * party Hp updates are no longer done each time the Hp is modified, but - together with the party xy timer. It means HP-bars will be a bit delayed - before being updated, but packet consumption should be much less during - heated battles. [Skotlex] - * Fixed MoM's typo [Vicious] - * Fixed map_readafm missing strcpy(afm_name, m->name). [Skotlex] - * [Improved]: - - npc_click interception on BL_MOB and BL_PC to let sd act accordingly. - [Lance] - * [Fixed]: - - Execution of sleep/sleep2 more than once will hang the script_state. - [Lance] - * Fixed @mapinfo displaying incorrectly maps with nosave which send you - back to your last savepoint. [Skotlex] - * Moved guild_exp_rate from a mapserver battle config setting to a char - server config. It no longer modifies the total taxed exp as seen on the - guild information window, but directly modifies the exp that the guild - earns. [Skotlex] - * Added an error report and correction when the map server receives a guild - from the char-server with more guild members than MAX_GUILD. [Skotlex] - * Changed the interval between waterballs back to 125 [MasterOfMuppets] - * Fixed a typo in char_sql/char.c, thanks to Euph [MasterOfMuppets] -2006/06/08 - * Modified guild exp to be an unsigned int rather than a signed one. - [Skotlex] - * Fixed @skilltree printing out Unknown job for most targets used. - [Skotlex] - * Cleaned clif_pvpset to not send the packet to nearby characters when the - source is GM-hidden. May help fix the crash on PvP with gm-hidden - characters. [Skotlex] - * Modified map_freeblock_unlock so that aFree errors will report the - file/line that INVOKED the function rather than the function itself. - [Skotlex] - NOTE: Do NOT disable the memory manager as that will break this change. - This change is to be temporarily set until the afree'd error can be - resolved. - * Updated mob_npc_warp to a three-state config switch. 0 disables. 1 enable - only on warps that don't lead to nobranch maps. 2 - enable on all warps. - [Skotlex] - * Adjusted Don't Forget Me, Defender, Longing to use all val entries, and - to hold the speed adjustment value rather than speed penalty (eg: 125 - instead of 25). [Skotlex] - * Cleaned up status_calc_speed so that speed penalties are correctly - handled (eg: 25% penalty is speed*100/75, not +speed*25/100). Thanks to - Euph for pointing it out and Belle for the speed mechanics. [Skotlex] -2006/06/07 - * Fixed Sense using mdef instead of mdef2 [Skotlex] - * Fixed item-skills not showing up on login. [Skotlex] - * Cleaned up clif_parseLoadEndAck, by testing which packets are required - only on first-login and which ones are required on all map-changes. - Skill-tree, Exp, Skill Points and most of the basic status are no longer - sent on map-change (items, cart data and zeny still need to be sent one - very map-change). [Skotlex] - * Fixed the mob state not being set to Berserk/Angry correctly after the - mob reaches the target's location. [Skotlex] - * Added config setting mob_npc_warp, when set to yes, enables mobs to be - warped between maps when stepping on a npc-warp. [Skotlex] - * Added monster_ai setting &64, when enabled makes a mob run to any nearby - npc-warp when their current target has switched maps. [Skotlex] - * Added pc_calcexp to calculate individual exp bonuses acquired from exp's - source (race bonus cards, SG Exp skills, pk-mode higher level exp) [Skotlex] - * pc_gain_exp now also receives the source of the exp, when said source - exists, bonuses are applicated as needed. [Skotlex] - * Added status_kill when capturing a mob, should take care of the mob not - respawning after caputed. [Skotlex] - * Fixed item info not displaying the found item id [Skotlex] - * Fixed item info not displaying the weight value properly. [Skotlex] - * Adjusted status resistances and durations taking as base Viccious's info - from the kro guidebook. [Skotlex] - * Moved souldrain code from skill_counter_additional_effect to mob_dead. It - should display the skill animation correctly now. [Skotlex] - * Adjusted several sc rate/time reductions as pointed out by Playtester. - [Skotlex] - - Luk now plays a luk/10 reduction role rather than a luk/3 one. - * Removed char_nick2id from char-sql server as it's no longer needed. - [Skotlex] - * Fixed quitting the map server not properly saving the storage before - deleting it. Thanks to Adam for pointing it out. [Skotlex] - * Cleaned status_get_sc_tick/status_get_sc_def to use the status_data - function. [Skotlex] - * SC_STOP's chance and duration can't be reduced anymore. [Skotlex] - * Storm Gust no longer has a 100% chance to freeze by passing mdef, now it - has a 300% base chance reduced by mdef and the like as explained out by - Tharis. [Skotlex] - * Frost Diver/Frost Nova's base freezing chance is no longer affected by - target's int. [Skotlex] - * [Improved]: - - mob_dead not to remove script controlled monsters with player sprites. - [Added]: - - buildin_mobdeadsit :D [Lance] - * [Fixed]: - - temp++ gets issued before if(mvp_damage<(unsigned int)md->dmglog[i].dmg) in - mob_damage. Thanks to seahorsix. [Lance] - * [Fixed]: - - Corrected login-server SQL to use *((ulong *)p) instead of (ulong)p [Lance] - * [Optimized]: - - list and size not being initialized (size get intialized in default: switch case) - Eliminated default case and initialized list and size at the beginning. [Lance] -2006/06/06 - * Hopefully fixed for sure mobs getting extra stats when changing-class due - to the mobs level up setting. [Skotlex] - * Removed a piece of code that should no longer be needed due to the - combo-skill setting (inf = self, inf2 = no-target-self) which is blocking - self-skills from being used on others (pets/mobs should be allowed to do - that) [Skotlex] - * Added a status_check_skilluse call in Sightblaster to prevent it from - hitting hidden/cloaked/act-dead/etc players. [Skotlex] - * Fixed firewall counter going down by 2 each hit rather than 1. [Skotlex] - * Fixed Soul Burn not zapping away all SP. [Skotlex] - * The monsters can level up setting will not take effect when the mob's - level is LESS than their db counter-part (should prevent under-leveling - causing underflows and semi-immortal mobs) [Skotlex] - * Fixed mvp-exp calculations being messed up with more than one attacker. - [Skotlex] - * Changed the mob exp race bonus so that each player gets their own bonus, - rather than the killer's bonus applying to everyone. Still not the - "correct" way, but one step closer to it. [Skotlex] - * [Fixed]: - - Allocation of event_list in guild_npc_request_info to aCalloc so - memcpy(ev->name,event,strlen(event)) will have a null terminator. [Lance] -2006/06/05 - * Fixed a crash when using SL_SMA and the "combo" ain't ready. [Skotlex] - * Hopefully fixed changing a mob's class causing them to get all sort of - stat bonuses due to the mobs-level-up setting. [Skotlex] - * Changed hit, flee, cri, flee2, def2 and mdef2 to signed short, def, mdef - to signed char to correctly account for cards with penalties in said stats. - [Skotlex] - * Fog of Wall won't affect the caster now in any way. [Skotlex] - * Added clif_fixpos packets before attacking for the first time to clear - any position sync issues with the client. [Skotlex] - * Fixed skill_unitsetting using layout->count for the for instead of - group->count [Skotlex] - * Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly - increase dex/agi by 40% per level. [Skotlex] - * Fixed char-sql server not deleting character variables when deleting a - char. [Skotlex] - * Corrected cloaking not ending on attack if you are near a wall. [Skotlex] - * Updated pc_bonus to use cap_value on all status_data modifiers to prevent - overflows/underflows. [Skotlex] -2006/06/03 - * Fixed @mi/@mobinfo not showing the name collumns correcly [shadow] - * Solved the bug that made firewalls only castable a few times until [MasterOfMuppets] - you relogged. Thanks to Euph for the fix. - * Added variable other_mapserver_count to chrif.c which holds total count - of connected map-servers. By using this we prevent sending unnecessary - packets to the char-server when there's no more map-servers connected. - [Skotlex] - - Affected packets are whispers, announces, party messages, guild messages. -2006/06/02 - * Fixed Visual Studio 7.1 Solution File (Login TXT and Map TXT were removed) - * Fixed a bug in unit_can_reach_bl which breaks path seeking when the - target is near obstacles. [Skotlex] - * Updated offensive use of Sanctuary to function like on the official servers [MasterOfMuppets] - * Changed the interval between waterballs from 150 to 250 milliseconds [MasterOfMuppets] - * Corrected clif_parse_takeitem to ALWAYS return a NAK packet when it - fails. Fixes cases where the client gets "stuck" and refuses to let you - pick any items. [Skotlex] - * Removed the walk delay from firewall and changed its knockback [MasterOfMuppets] - to 1 tile to make it act more like in the official servers. - * Some cleaning of the mob slave ai. [Skotlex] - * Corrected Brandish Spear to work on levels above 10. [Skotlex] - * Updated Two-HandQuicken, One-HandQuicken to give 30 +2*lv% aspd-rate for - skill levels above 10 (meant for boss casted skills) [Skotlex] - * Fixed Spear-Quicken messing with the calc_flag [Skotlex] - * Fixed Freeze/Stone/Benedictio not changing your elemental LEVEL to 1. - [Skotlex] - * [Fixed] - - Yet another compilation warning. [Lance] -2006/06/01 - * Altered status_calc_pc so that equipment scripts are ran before - card-scripts. [Skotlex] - * Fixed pc_bonus to not underflow/overflow when adjusting def/mdef. - [Skotlex] - - These two together, should fix Tao Gunka Card. - * npc_debug_warps() will now be invoked if warp_point_debug is set. - [Skotlex] - * Updated item_db.sql/mob_db.sql to current. [Skotlex] - * Fixed NPC_SELFDESTRUCTION not showing nor dealing damage. [Skotlex] - * NPC_TRANSFORMATION/NPC_METAMORPHOSIS will now preserve the original mob - without removing it when the skill level is greater than one. [Skotlex] - * Added SC_DANCING declaration in the Status Change tables to signal it - modifies Walk speed. [Skotlex] - * Fixed pc_damage setting your canlog_tick even if the damage has no source - (eg: poison, berserk) [Skotlex] - * Berserk's aspd bonus now stacks with other aspd bonuses, but is still - affected by Quagmire/Forget-me-not. [Skotlex] - * Corrected setting slaves_inherit_mode to not apply to morphosis skills. - [Skotlex] - * Corrected pc_setoption to invoke status_calc_pc when getting/removing the - cart. [Skotlex] - * Fixed @mobinfo displaying the wrong element. [Skotlex] - * Fixed Autoblitz taking into account target's luck rather than attacker's - [Skotlex] - * Fixed slaves warping endlessly to their master when the master-slave - distance exceeds 30. [Skotlex] - * SC_ORCISH will now be dispelled on logout (if debufF_on_logout is set) - [Skotlex] - * Removed attackrange/attackrange_ from TBL_PC, corrected clif.c using the - incorrect range variable. [Skotlex] - * You can now equip/unequip stuff while the storage is open. [Skotlex] -2006/05/31 - * Fixed Soul Drain not really giving you SP [Skotlex] - * [Fixed]: - - Suppressed compilation warning in chrif.c [Lance] - * [Fixed]: - - Guys can't go across map-servers :( [Lance] - * [Fixed]: - - Restoration and saving of sd->npc_id must be done every time. [Lance] - * Added back the Freeze/Petrify adjustments of -50%def and +25%mdef (when - where these lost?). Thanks to Buuyo for pointing it out. [Skotlex] - * Corrected the mob_ai&2 setting triggering rude-attacked due to can't walk - delay. [Skotlex] - * Made the char_name_option char_athena.conf setting apply to parties and - guilds as well. It cannot be applied to pets yet without adding a - change-name-request interserver packet. [Skotlex] - * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them. - [Skotlex] - * Added function char_read_fame_list for famelist reading. Invoked it on - init, and made it be sent automatically to connecting map servers. - [Skotlex] - * Some cleaning of the fame-list reading code. [Skotlex] - * Some cleaning of the fame-update code, fixed a logic bug which made the - ranking list fail to display the correct ranker names. [Skotlex] - * Removed typedef bool from socket.h and included cbasetypes.c instead. - [Skotlex] - * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in - status_calc_bl. [Skotlex] - * [Fixed]: - - Incorrect SQL syntax in login.c (missing collumn) [Lance] - * [Improved]: - - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance] - * [Fixed]: - - nullpo in pet.c caused by equipping without checking if the pet is available. - [Lance] - * [Fixed]: - - Latest client support completed! [Lance] - * [Fixed]: - - Missing #include for cbasetypes.h in login server SQL. - - Logic errors in run_script [Lance] - * [Added]: - - Partial support for latest login packet. But it seems to have a new security - module. [Lance] -2006/05/30 - * [Improved]: - - Fake NPC interface to use real NPCs. - - Scripting interface to restore and save sd->npc_id. [Lance] - * Added function pc_check_skilltree for checking if you unlocked new - tree-skills when raising non-passive skills. [Skotlex] - * Fixed flee/hit calculation in status_calc_bl to account for bonuses from - the base status. [Skotlex] - * [Fixed]: - - Compatibility problems in login.c [Lance] - * Fixed pets ignoring can-act delays for skill usage. [Skotlex] - * [Added]: - - Mercenary.c in VS.NET 2005 project files - [Improved]: - - loginlog using unsigned long `ip` field. - (Please check for compatibility problems). [Lance] - * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain - bonuses (like effect-on-hit) to stack. [Skotlex] - * slaves inherit speed setting will now work regardless of whether the - slave or master has the MD_CANMOVE mode bit. [Skotlex] - * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex] - * AL_TELEPORT will fail when used by slave mobs. [Skotlex] - * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable - attacks. [Skotlex] - * Fixed status_damage not setting your HP to 0 when you died [Skotlex] - * Fixed the pcbonus2 warnings using the wrong value before printing the - invalid Element error. [Skotlex] - * Fixed underflow issues when calculating dmotion. [Skotlex] - * Fixed Absorb Spirit Spheres [Skotlex] - * Added battle_config min_chat_delay (default 0, battle/client.conf) - specifies in ms what is the min delay between player sent chats - (whisper/global/party/guild). Messages that exceed this threshold are - silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the - player?) [Skotlex] - * [Fixed]: - - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance] - * Rewrote/cleaned up @petfriendly. [Skotlex] - * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex] - * Updated attr_fix_table reading code to account for ELE_MAX (will - correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex] - * Aggressive mobs will now use battle_check_range rather than mob_can_reach - to decide whether to lock-on or not to a target within sight-range. [Skotlex] - * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex] - * Added error messages in pc_bonus* functions when an invalid element is - passed to the relevant bonuses. [Skotlex] - * [Optimized]: - - clif_specialeffect to use the enums. - [Improved]: - - buildin_specialeffect and buildin_specialeffect2 to accept effect area - definition. [Lance] - * [Added]: - - Visual Studio .NET 2003 includes for mercenary.c [Lance] - * Removed the on-die specific code from unit_remove_map and placed it on - the corresponding *_dead functions. unit_remove_map should never assume the - char died, it is just a "remove from map" function. [Skotlex] - * Updated status_damage to handle the general death code (clearing status - changes, clearing skill related data, sending death packet, etc). The - return value from the *_dead functions will tell it what to do or not with - the object (death aborted, clear it from map/memory, etc) [Skotlex] - * Cleaned up pc_dead to take advantage of the fact that status changes are - not ended until after the function. [Skotlex] - * Disabled ontouch npcs triggering on hidden/chase-walk characters. - [Skotlex] - * Updated/adapted current Homun code to use the status_data update. - [Skotlex] - * Updated map-server Makefile to compile mercenary.* files. [Skotlex] - * [Fixed]: - - Pets attacking even master is dead. [Lance] - * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0 - (negative values should be allowed when attack is absorbed by target's - element) [Skotlex] -2006/05/29 - * [Fixed]: - - Missing ';' in item #4358 [Lance] - * [Fixed]: - - Missing maps in map index database. [Lance] - * [Fixed]: - - Battle mechanics in battle_check_target [Lance] - * [Fixed]: - - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing. - [Lance] - * Cleaned up friend list saving and fixed loading of friends.txt file - (char-txt) [Skotlex] - * Added the Arunafeltz maps, not tested yet [Playtester] - - someone with an up-to-date client should test them - * Fixed pc_gainexp resetting your exp to 0 rather than adding it in... - [Skotlex] - * Corrected aspd calculation code to avoid negative overflows. [Skotlex] - * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR - instead of BL_PC and BL_MOB [Skotlex] - * [Fixed]: - - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance] - * Removed Undead being inmune to poison status. [Skotlex] - * Removed speed penalty from SC_SKA [Skotlex] - * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex] - * SC_DODGE won't be dispelled on death now. [Skotlex] - * [Fixed]: - - pc_follow_timer possible triggering crash. - - pc_reg_received to use battle_status.hp instead of status.hp - [Added]: - - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance] - * Added a division by zero check in mob_dead to prevent the (impossible) - case where a mob dies with received damage of zero. [Skotlex] - * Modified skill_get_range2 to return range 9 for skills with range 0 for - Non-Players. This usually signals Self skills, and mobs/pets should be able - to use them in other characters. [Skotlex] - * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex] - * Fixed draining when the amount drained is negative (invoke zap rather - than heal) [Skotlex] - * Implemented GS_FLING as per the current skill description. [Skotlex] - * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than - status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex] - * Added some missing SC_* entries on the initial listing (potion related - and speed up ones) [Skotlex] - * Fixed function declaration of map_getcellp() [Skotlex] - * [Fixed]: - - status.c:920: warning: 'mbl' might be used uninitialized in this function - - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function - - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function - - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance] - * [Optimized]: - - Removed unused variable (account_id) in storage_guild_storagesaved. - * [Optimized]: - - Removed unused checks for unsigned data type and possible logic error for - char type (gcc treats char as unsigned). [Lance] - * [Fixed]: - - Relogging in with 0 HP didn't trigger dead event. [Lance] -2006/05/28 - * Added functions status_revive, pc_revive and mob_revive to handle revival - (it doesn't handles player respawning, though). Fixed reviving @ commands. - [Skotlex] - * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes - Bladestop causing an unknown status change message). [Skotlex] - * Fixed MSS_DEAD state skills not triggering. [Skotlex] - * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets] - * [Fixed]: - - script functions that doesn't pass references, thanks to End_of_exam. [Lance] - * [Protected]: - - clif_parse_LGMmessage from possible hacks [Lance] - * Fixed unable to store n items into storage unless n was the total amount - of items you had. [Skotlex] - * Suppressed compilation warnings (unsigned and signed mismatches) [Lance] -2006/05/27 - * Added structure status_data which holds status-related information (str, - agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc) - and weapon_atk structure with the weapon specific info (atk, atk2, element) - to be used by all combat structures (TODO: Homun needs to be updated to use - it). This in change involves a LOT of changes throughout the code and many - optimizations were done as well. Partial list (see svn changelog for complete - changes): [Skotlex] - - NOTE: Changes are substantial! I tested a bunch of stuff and all the - skills I changed the most, but it is possible there are unnoticed bugs - remaining to fix! - - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data. - - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead - - Added status functions to deal with damage and healing (status_damage, - status_heal, status_percent_change) and a bunch of defines for easier - handling of them (status_percent_heal, status_percent_damage, - status_fix_damage, status_kill, etc). Objects must be hurt/healed through - THIS, pc_damage/mob_damage most no longer be directly invoked! - - Rewrote and cleaned up battle_calc_misc_attack - - Merged config options pc_attack_attr_none, mob_attack_attr_none, - pet_attack_attr_none into attack_attr_none (type 4) - - Removed config options player_defense_type, monster_defense_type, - pet_defense_type in favor of weapon_defense_type - - Modified skill_calc_heal to take into account the MEDITATION bonus. - - Modified Slim Pitcher so it will work when casted by non-players. Will - now also work with SP-healing items. - - Rewrote Freedom of Cast code to use function status_freecast_switch to - switch adelay/speed when cast begins/ends. - - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for - easier updating when used in conjunction with ground skills. - - Fixed Asura Strike being usable from within a combo regardless of combo skill. - - Added status_calc_bl which does status-change related calculations using - as base the base_status of the bl object and the SCB_* flag passed. This is - invoked on status changes, and status_calc_pc will no longer be invoked - (which results on much faster status-change calculations). - - pc_clean_skilltree will now also remove item-granted skills. - - Learning skills will now only invoke status_calc_pc when the skill is passive. - - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related - packets and functions ONCE regardless of skill-levls earned. - - Cleaned up pc_ regen related functions. - - Made player-sprite mobs have item pickup animation and walkdelay when taking items. - - Clones will copy a player's base status rather than battle status (so - status-change alterations are not cloned) -2006/05/26 - * Part B of the homunculus code. [blackhole89] - While most of the homunculus handling functions are in now, it still lacks - code required for players to create it. - Given I haven't screwed up, you could master yourself one through the DB though. - * Fixed crashing in mob.c [Lance] - * Patches to allow everything to work right. + 1 more sample script. [Lance] - * Mob control engine tested 99% working so far. [Lance] - * Change scripting engine's NPC scope vars to dot (.) style. - * Improved and (should be fully) fixed the mob control engine. [Lance] - * Fixed typos in char.c [Lance] - * Rewrote fame rank lists system to reduce char-server load, as requested by - Skotlex: now it has a copy of those lists, and updates only the proper one - when needed instead of rebuilding all from saves everytime (which required - to always save the character before rebuilding the lists) [DracoRPG] - - Note it hasn't been compiled nor tested with SQL, please do it for me -2006/05/25 - * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional - int-based damage component (which is added right before elemental - modifiers) as described by AuronX. Pending further refining. [Skotlex] - * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus] - Fixed atcommand @request MSG numbers accordinly. - On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too - * Added NoVending mapflag. You may disable vending in the streets [Lupus] - * Increased capacity for Account Variables to 64 [Skotlex] - * Reverted Intravision implementation to that of stable's. [Skotlex] - * Corrected Login Server taking it's first argument as both login config - and lan config. [Skotlex] - * Fixed mob control commands. - * Fixed memory leak in scripts (again). Still have a few lying. [Lance] -2006/05/24 - * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout. - * Item sharing now shares the same rules as exp sharing (no sharing when - dead, or idle, etc) [Skotlex] - * Fixed summoned slaves being able to cast onspawn summon-skills (slaves - aren't supposed to be able to call minions) [Skotlex] - * The clif_skill_poseffect packet will not be invoked in Snap unless the - skill was successful. May fix the client-position lag. [Skotlex] - * Merged item_db.sql from stable (the one from stable was more recent than - the one of trunk...) [Skotlex] - * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex] - * Corrected a pair of incorrect sql query parsing logic in the login-sql - ban request packet. [Skotlex] -2006/05/23 - * Corrected mob angry mode, now it only "restores" itself after being hit - when the mob has no target within their range of sight rather than on - picking a new target. [Skotlex] - * Fixed wedding sprite where it would stay active after unequipping. [Zido] - * Some cleanup of run_script, should fix the memory leak there. [Skotlex] - * the charname request hack message has been downgraded to only include - GM-invisible characters. [Skotlex] - * corrected clif_charnameack to send negative ID when a disguised player - asks for it's own disguised name. [Skotlex] - * Cleaned up the disguised target-id checks taking into considering that - the only character that sees a negative ID is the same disguised character. - [Skotlex] - * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce - defense), Investigate and Icepick will now use the final def/vit-def values - rather than the base ones. [Skotlex] - * The move-enable condition checks for skills are now checked for only when - on skill use, not at cast-end time. [Skotlex] - * Corrected clif parse name request failing on disguised characters [Skotlex] - * Corrected Soul Drain draining from all non-ground-based skills including - non-magic attacks. [Skotlex] - * Corrected pc_setoption to change the option and then change class. - changing option-wedding will automatically convert the view-class as well. - [Skotlex] - * Corrected the 15% drop rate increase when killing higher level mobs in - pk-mode triggering for all mobs with lower level than yourself. Thanks to - Vayu. [Skotlex] - * Fixed typo (this time it's not my fault) in script_reload() clearing the same - db each time o_o [Lance] - * Fixed sleep command. [Lance] - * Added 'setd' support for local NPC scope (') variables. [Lance] - * [Scripting Engine Update] New variables are ready to be used. [Lance] -2006/05/22 - * Updated skill_delayfix to return 0 for mobs since they have no skill - delay other than the one specified in mob_skill_db [Skotlex] - * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to - Vayu for pointing it out. [Skotlex] - * status_get_sc_tick will now use directly Stun's formula rather than - invoking the status sc chance once. [Skotlex] - * Fixed a possible null pointer in script command misc_effect [Skotlex] - * Modified Investigate to take into consideration final def/vit-def rather - than base values for damage adjustment. [Skotlex] - * WARNING: New scripting system contains memory leak - TODO: Free all scripts using script_free_code() instead of old methods. [Lance] - * Excluded idle and auto-trade party members from TK_POWER list. [Lance] - * Fixed compilation errors. - Tidy up jobmaster for easy debugging. [Lance] -2006/05/21 - * Part A of the Homunculus code. - This only features the structures, status_* and clif_* (packets) and is - not functional yet in any conventional way, but doesn't interfere - with present functionality either. - Main purpose is helping me to keep my work organized. [blackhole89] - * Fixed the "fake" mute status bug. [Zido] - * Speed up array size calculation and deletion. [Lance] - * Player must learn the skill before doing auto-spell [Lance] - * Exploit prevention in clif_parse_NpcStringInput [Lance] - * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus] - * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus] -2006/05/20 - * grfio_final moved back if any of GRF overriding is enabled so servers - with such configuration will not have different values after reloading. [Lance] - * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance] - * Abit of alterations to login-server. [Lance] -2006/05/19 - * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance] - * Small change in pc_additem that could be fixing the current bug with new - items not getting added. [Skotlex] - * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex] - * Likely fixed the mob-skill random picking behaviour causing infinite - loops sometimes. [Skotlex] - * Modified mobskill_use behaviour to pick a random starting point and check - skills from that, rather than always checking from first to last. Fixes - skills with high priority blocking skills lower down in the list from - triggering. [Skotlex] - * Updated mob ai behaviour so that mobs use IDLE state skills when their - current target cannot be reached for melee fighting. [Skotlex] -2006/05/18 - * Added 5 config settings to adjust damage in pk-mode servers (misc.conf) - [Skotlex] - * Fixed mob_max_skilllvl being capped to 11! [Skotlex] - * Rewrote/cleaned up several functions in storage.c [Skotlex] - * Optimized pc_additem comparisons to account for items with more than four - slots. [Skotlex] - * Updated clif.c to enable retrieval of items from cart/storage while - trading. Exception is retrieving items from the cart while vending. - [Skotlex] - - The reasoning is that an ongoing trade will not get "corrupted" if you - earn items before it is commited (only if you lose items from your - inventory), and it is an annoyance when you realize the stuff you want to - trade is on the cart/storage. - * skill reiteration code now does not checks for the trigger-area of the - skill in the case of non-players, which means mobs can now place traps in - cells adjacent to each other. [Skotlex] - * Applied an experimental weather code that should lower bandwidth usage to - near-none, which's only disadvantage should be the weather not clearing out - until moving to another map (even when the mapflag is removed from the - current map). Please test and report if there's any anomalies with it. - [Skotlex] - * NPC_AGIUP will now give movement boost of 50% [Skotlex] - * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex] - * MO_BODYRELOCATION will send the slide packet with the actual src's - coordinates rather than selected tile. [Skotlex] -2006/05/17 - * Modified mob_can_changetarget to return true always when the new target - is the provoked-by character. Fixes provoke not making the mob change - target when it already is locked on another player. [Skotlex] - * Added check to clear previous skill when combo time ends. Should fix TK - Rankers being unable to initiate a combo with the same kick their previous - combo was finished with. [Skotlex] - * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex] -2006/05/16 - * Modified "hide woe damage" to send the number of hits rather than 1 as - damage Because when the damage is less than the number of hits, the client - will display MISS. [Skotlex] - * Fire Pillar will now do 200%MATK damage per hit when level is >10. - [Skotlex] - * Blood Drain always hits now. [Skotlex] - * Fixed Mob Area Skills not updating their use-time (rendering their skill - delay useless) [Skotlex] - * Search free cell will now skip picking the center-tile as target - location. Will prevent slaves from walking on top of their master, or mobs - placing stuff right under themselves with the "around" target conditions - among other things. [Skotlex] -2006/05/15 - * Small changes to the skill.conf - - Monsters now can place ground skills on top of each other by default - - Land_Skill_Limit format changed and set to "Only Players" by default - * When reading mapflags, when a map is set to be pvp or gvg, the other will - be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex] - * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the - skill level is above 10. [Skotlex] - * Sorted out the item_data structure, getiteminfo should work correctly - now. [Skotlex] - * KA* skills can now be casted on other Soul Linkers as well without the - Spirit requirement. [Skotlex] - * Soul Drain will now show the SP drained regardless of drain display - settings. [Skotlex] - * SC_COMBO state will now end in skill_attack rather than - skill_check_condition (as it is required there to apply damage bonuses - based on combo-casted skills) [Skotlex] - * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096) - [Skotlex] - * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode - servers. [Skotlex] - * When removing a castle's owning guild, the char servers will erase the - guardian data now. [Skotlex] - * Changed the behaviour of immobile mobs when they can't chase their - target. Rather than using a longrange skill and then unlocking, they will - use an attack/angry state skill and then unlock. [Skotlex] - * Some adjustments of how disguising + gm-hiding work together. [Skotlex] - * Fixed clif_GlobalMessage being the exact same function as clif_message - (the first should send to ALL_CLIENT and the later should send to - AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex] - * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex] - * Characters in vending are now always considered "idle" if the - idle_no_share setting is active. [Skotlex] - * Players with OPTION_INVISIBLE should not be sent to clients. [Lance] - * Remaining fixes for item scripts. [Lance] - * Added NPC event deprecated warnings to ease debugging old scripts. [Lance] - -2006/05/12 - * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance] - * Bugfix on fake npc [Lance] - * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89] - * Reverted again the change that stuns the caster on Ske, Ska, Swoo when - the target is a nonplayer (rather than always) [Skotlex] - * Modified mob_spawn_once so that coordinates -1,-1 are "random around the - player" while 0,0 are random around the whole map (regardless of whether - there's a player attached or not) [Skotlex] - * Knockback will no longer work on traps during woe. [Skotlex] -2006/05/11 - * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage - [Skotlex] - * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively) - of 40% per level. [Skotlex] - * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows. - [Skotlex] - * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex] - * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex] - * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex] - * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2) - [Skotlex] - * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10 - secs (reducable) if you target a mob that already has Swoo active. [Skotlex] - * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to - Tanaous [Skotlex] - * Added back the missing code that substracts arrows when normal-attacking. - [Skotlex] -2006/05/10 - * Changed the state of Asura back to explosionspirits, added a hardcoded - move_enable check when invoking Asura and NOT while in BladeStop or a - Combo. [Skotlex] - * Added back SC_XMAS to status.c, it got lost sometime during all the - previous reworkings. [Skotlex] - * Changed wedding costumes to use setoption rather than changebase. - [Skotlex] - * Modified setoption so that flag 1 or no flag adds an option, and flag 0 - removes it. [Skotlex] - * Updated script_commands with the new behaviour. [Skotlex] - * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather - than 15. [Skotlex] - * Users are now able to use their own dnsbl servers (login_athena) [Zido] - -2006/05/09 - * Rewrote/cleaned up trade.c for a more clean trading implementation. - [Skotlex] - * Added @request commands, sends a request to all connected GMs of - lowest_gm_level or above as a whisper message. Defaults to gm level 20 - users (UNTESTED). [Skotlex] - * Modified @commands to use Meruru's code which is faster and does a fair - attempt at tabulating the commands presented. [Skotlex] - * Updated SKA to return a random value between 0 and 99 each time - status_get_def is invoked. [Skotlex] - * Updated Making Arrow to not include unidentified items in the list. - [Skotlex] - * Reduced drop slots from 15 to 10. [Skotlex] - * Updated mob_db.sql with the current data. [Skotlex] - * Updated setoption script command to receive a second (optional) argument - flag. If the flag is 1, the option is added to what the player currently - has; likewise using flag 2 removes only that option. No flag (or any other - value) is the older behaviour of removing all other options and setting - specificly what is passed. [Skotlex] - * Updated script_commands information for setoption due to this change. - [Skotlex] - * Small fix in npc-created chat rooms to properly include the terminating 0 - on the chat's event. [Skotlex] - * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer - get reduced by 50% regardless of who is standing on the fog. [Skotlex] - * monster_ai&2 will now trigger the rude-attacked skill when the mob can't - move and the attacker is out of it's attack range. [Skotlex] - * Added missing icon for Joint Beat [Skotlex] - * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex] - * Treasure chests will now be excluded from the mob-drop listings - (@whodrops) [Skotlex] - * Fix on pc_skill which fixes overlapping when one gets more than one bonus - for the same skill. [Skotlex] - * Updated main.sql's loginlog table structure. [Skotlex] - * Added svn_update6533.sql to update the loginlog structure as suggested by - theultramage. [Skotlex] - * Cleaned up somewhat the implementation of BladeStop. [Skotlex] - * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet) - when crafted for non-players. [Skotlex] - * 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/blocked) [Skotlex] - * Fixed a possible counter overflow in attacked_count, changed the var size - to unsigned char since the code can handle the overflow now. [Skotlex] - * Multiple targets again reduces armor defense, as reported by Tharis. - [Skotlex] - * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex] - * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex] -2006/05/08 - * Reverted the change that was making ES skills stun the caster always. - [Skotlex] - * Removed the fixpos packet which is sent whenever you are hit while moving - as Aegis doesn't sends this packet neither. [Skotlex] - * ES magic will now put the caster on stun for 0.5 secs regardless of - whether the skill-target is a mob or not. [Skotlex] - * 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. - [Skotlex] - * Added clif_ParseAdoptRequest which does the basic adoption handling. More - checks and the reply packets still need to be coded in. [Skotlex] - * Happy State and TK stances won't dispel on death now. [Skotlex] - * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in - skill_check_condition now. [Skotlex] - * Modified TK-ranker infinite combos to behave as described by AuronX. - Refer to his thread in the development section for details. [Skotlex] - * Made all Soul Link Spirit skills not be castable on self. [Skotlex] - * Changed rate of NPC status effect skills to 50+10*lv% base chance - (guessed, but better than 100% for all levels) [Skotlex] - * Changed max level of NPC status effect skills to 5 [Skotlex] - * Increased max number of tries to find a random spot in maps to 1000 since - some maps have so many non-walkable tiles it's hard to find one in just 100 - tries. [Skotlex] - * status_set_viewdata will remove the Wedding Option status when you set a - class that is not wedding. [Skotlex] - * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex] - * idletime will now be updated on attack-request, not on sit/standup - [Skotlex] - * Party members sitting will no longer be considered idle. [Skotlex] - * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used - with the disguise/undisguise script commands instead). [Skotlex] - * Moved Sharp Shooting display to the block with Auto-Counter (since that's - the other skill that can show critical as well) [Skotlex] - * Corrected some fields in the standing still packet (guild emblem being - stored as a Long when it should be Short) [Skotlex] - * Modified most fields of view_data to be unsigned shorts rather than - signed ones. [Skotlex] - * On-Touch NPCs will now make you stop walking when you trigger them. - [Skotlex] - * ShadowJump/JumpKick will make you land on the target's cell now. - [Skotlex] - * Fixed Kaahi triggering only once per skill duration. [Skotlex] -2006/05/07 - * Fixed readme/changelog.html [KillerBox] - * Removed old logs. [Lupus] - TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index -2006/05/05 - * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc - before sending one (as it's not required to send twice). - * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps - players and still continues execution to work). [Lance] - * Updated item_db.sql to current. [Skotlex] - * Fixed a bug in @commands, most likely the reason some people were still - getting crashes. [Skotlex] - * Fixed @commands not showing the last available commands (unless the total - amount of commands is divisible by ten) [Skotlex] - * Added a npc-script-event cache to avoid looking up event-scripts every - time they need to be executed. Events cached are all those defined in - script_config (on login, logout, mapchange, death, kill, level up) [Skotlex] - - Since the cache holds direct pointers to the npcs/events, do NOT unload - the related NPCs or you'll get dangling pointer crashes. However, - @reloadscript will work fine. - - Set the etc_log to on to see a summary of npcs/events loaded for script - execution on startup. - * The Rest bonus activated by using /doridori while in rest should now - trigger with all the class tree (TK/SL/SG) [Skotlex] - * Fixed Kaupe always triggering when the one who was under Kaupe was a - player rather than the one attacking... [Skotlex] - * /doridori now won't double the HP/SP regen of TKs, it only activates - their "happy" state. [Skotlex] - * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex] - * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex] - * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills - (even if there's no other TK around). [Skotlex] - * 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 (battle/monster.conf) [Skotlex] - * Kaupe now will only block all skills of players, for non-players, only - normal attacks can be missed. [Skotlex] - * 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. - [Skotlex] - * OnEquip scripts will now trigger on log-on. [Skotlex] - * Infinite Endure will no longer give mdef bonus. [Skotlex] - * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to - start/end infinite endure. [Skotlex] - * Fixed Kaahi's SP cost per heal. [Skotlex] - * Now when walkdelay is set to 0, characters will stop walking when hit, - but will not have any walk delay. (previously setting walk delay to 0 would - not even stop characters from walking when hit) [Skotlex] -2006/05/04 - * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido] - * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex] - * Some clean-ups in the mob_ai [Skotlex] - * Improved atcommand autoloot, now displays droprate in percents and notices - player if autoloot is already on or off. Also simplified the code [Harbin, Kain], - commited by erKURITA - * Added one grace range in the mob_loot search function which should fix - mob_can_reach failing when invoked with the same distance that distance_bl - returned. [Skotlex] - * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex] - * Eska is now usable on bosses. [Skotlex] - * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex] - * clif_skill_failed will print out a debug line with the skill_id (since - the current null_po does not helps at all to fix it) [Skotlex] - * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex] - * Rewrote Kaahi to behave as it should. It will heal whatever amount of - damage accumulates in the time2 interval (500ms by default) after being - hit. [Skotlex] - * Changed skill_unit_move_unit_group to enable moving of all types of - ground-skills except ensembles (fixes warmth not following you) [Skotlex] -2006/05/03 - * Kaahi now triggers every 500ms rather than on every hit (but it only - heals if in those 500ms an attack that would previously trigger Kaahi has - taken effect). In other words, it works just like before, except damage - gets "buffered" into 500ms slots. [Skotlex] - * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex - * Knowledge will now only trigger if you logon to the memorized map, not - walk into it. [Skotlex] - * Corrected @whomap directly invoking msg_table[] rather than msg_txt() - [Skotlex] - * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong - and not fix the pet issue, but I doubt it'll cause any problems that won't - be fixed by making the pet move. [Skotlex] - * Updated Charge Attack's state from none to move_enable. [Skotlex] - * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex] -2006/05/02 - * Fixed standing up not really standing you up. [Skotlex] - * 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. [Skotlex] - * 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. [Skotlex] - * Implemented desperado as explained by Rockman-EXE. The skill-effect is - not showing up though, I'll need some logged packets to see what's missing. - [Skotlex] - * Removed the unit_can_move checks in skill cast-end, they should be - performed in skill_check_require when the skill's state is move_enabled. - [Skotlex] - * Changed extremity fist's state to move_enabled, the explosion spirits - check is now hardcoded. [Skotlex] - * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with - Haplo. [Skotlex] - * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are - impossible to steal unless you have at least 100% steal-rate (where steal - rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[ - * Cleaned up clif_parse_action_request to enable sitting/standing while in - shops, interacting with npcs, etc. [Skotlex] - * Kaite now works against all types of spells. [Skotlex] - * Kaupe now works against all skills. [Skotlex] - * Sanctuary now won't damage non-enemies. [Skotlex] - * Blessing now will always give you bonus stats even if you are wearing - undead armor. [Skotlex] - * Modified how Rogue's treasure works so that you get +1% to your steal - rate rather than +0.01% to the final rate. [Skotlex] - * Rewrote Warmth to use ground-skill-units, it should behave now like in - officials (implementation is not quite the same, but it should yield the - same effects while consuming less bandwidth). "Stacking", as it's called, - is possible now, but limited to eA's minimum timer skill interval (100ms). - [Skotlex] - * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than - +5+lv to all stats (as explained by Playtester and Tharis on how the skill - behaves). [Skotlex] - * Allowed SG_FEEL memorizing the same map for all three. [Skotlex] - * SC_FUSION won't end when you die now. [Skotlex] -2006/05/01 - * Added knockback when you run into a wall during running. However - position is not being refreshed on the client yet... [Skotlex] - * Fixed pc_disguise not allowing you to "redisguise". [Skotlex] - * Corrected a crash when sd is null in npc_event [Skotlex] - * After testing to make sure it works properly, I'm including - new battle conf options to limit MVP drops. [Reddozen] - * Removed OPTION_XMAS, it seems to not exist.... [Skotlex] - * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO) - since it has a visual effect to use. [Skotlex] - * Corrected the value of OPTION_FLYING [Skotlex] - * Using SG_FUSION ends Soul Linked effect. [Skotlex] - * status_setviewdata will set your option accordingly when the previous/new - view-class is wedding or xmas suit. [Skotlex] - * Added function map_foreachinshootrange, behaves the same way as - map_foreachinrange, but it also performs a "shoot-path" check before - invoking the function. Used in the skill subtimer function if - skill_wall_check is defined. [Skotlex] - * Fixed AL_WARP displaying "Unknown Area" selections when you don't have - all memo points used up. [Skotlex] - * Fixed alive_count not being reset on skill unitsetting, which leads to - some groups not being cleared once all their units expire. [Skotlex] - * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved - to skill_counter additional effect so it may trigger even on miss. [Skotlex] - * SKA no longer blocks skills. [Skotlex] - * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance] +Date Added
+
+AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
+IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+
+2006/06/15
+ * [Fixed]:
+ - intif_parse_RenamePetOk for not compatible with ANSI-C initialzation specification.
+ [Lance]
+ * Added indexes for loginlog and ipbanlist as they did not have any.
+ (note, someone already put the index on loginlog on trunk.) [Euph]
+ * Merged Adam's patch to let the char-server handle validation of
+ pet-name-change requests through the allowed char letters config. [Skotlex]
+ * Fixed "wedding_ignore_palette: yes" not working when relogging with the
+ gear already equipped. [Skotlex]
+ * Added blocking of the Kick skills when you are a Soul Linker. [Skotlex]
+ * Added enabling to turn off a kick-stance regardless of class. [Skotlex]
+ * Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas
+ options. [Skotlex]
+ * Added back OPTION_XMAS, but the actual value is missing! [Skotlex]
+ * Corrected chrif_save so that the player is not set offline on map-change.
+ [Skotlex]
+ * Added change-look support in pc_setoption when specifying OPTION_XMAS
+ [Skotlex]
+ * Fixed clif_parse_RemoveOption removing all options instead of just
+ Falcon/Cart/Peco [Skotlex]
+ * Fixed clif_send not sending packets to SELF when specifying AREA if the
+ source is not on the map yet. [Skotlex]
+ * Fixed and cleaned up script command 'equip' [Skotlex]
+ * Fixed 'autoequip' items. [Skotlex]
+ * Fixed Aspd not being updated in your status window after Agi/Dex
+ increasing statuses take effect. [Skotlex]
+2006/06/14
+ * Fixed map_nick2sd so that searching for "Adam" will not match a char
+ named "Adam Smith". Thanks to Adam for reporting it out. [Skotlex]
+ * Modified how luk reduces status changes by reducing the gap. Eg: resist =
+ vit; resist += (max - resist)*luk/300; [Skotlex]
+ * Added battle settings pc_max_sc_luk/mob_max_sc_luk to handle which is the
+ luk threshold at which you gain inmunity (defaults to 300). [Skotlex]
+ * Fixed buildin_getmobdata. It was trying to handle the first parameter as the
+ array to fill in. [blackhole89]
+ * Blocked again skill usage during marionette. [Skotlex]
+ * Fixed main.sql adding a key on char_id rather than account_id for the
+ char table. [Skotlex]
+ * Cleaned up character saving in char-sql, it no longer needs to query the
+ database to see if the player exists on each char-save, instead it checks
+ the received data against the online-players db. No such fix is required
+ for char-txt. [Skotlex]
+ * Added an error message on the char-server when the received player data
+ size does not matches with the expected size (should avoid the crash that
+ happens on such a memcpy). [Skotlex]
+ * [Improved]:
+ - script_save_mapreg for MapregSQL Saving to display perfomance only in slow
+ queries. [Lance]
+2006/06/13
+ * Updated mob_db.sql and item_db.sql to latest. [Skotlex]
+ * Added account_id index to char table. Thanks to Buuyo for reporting it.
+ Sql users apply upgrade_svn7146.sql NOW. [Skotlex]
+ * Marionette and Devotion will now check raw distance and ignore obstacles
+ and the like. [Skotlex]
+ * Added irc_channel_pass setting and prevent crashing when irc server
+ lookup by host fails. Thanks to Trancid for the details. [Skotlex]
+ * [Fixed]:
+ - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
+ [Lance]
+ * Added support for reading correctly status change data from Guild and
+ Homun skills. [Skotlex]
+ * Added support for reading Homun skill data (which means the HM skills are
+ now safe to add to skill_db, skill_require_db, etc) [Skotlex]
+ * Oppositions can't be made during WoE now. [Skotlex]
+ * Fixed a few compiler warnings from VC [Skotlex]
+ * Commented out the Homunculus Skills<->Status Change link which was
+ causing some memory corruptions. [Skotlex]
+2006/06/12
+ * [Fixed]:
+ - buildin_npcshopitem not allocating extra 1 block of terminator.
+ [Added]:
+ - Modified versions of Dj-Yhn's buildin_npcshopdelitem and buildin_npcshopadditem
+ [Lance]
+ * Updated clif_disp_onlyself to not use dynamic memory and write directly
+ to the player's buffer. [Skotlex]
+ * Updated @noask to also tell the user what he has just rejected (added
+ msg_athena entries for each of the different requests). Also updated it to
+ use clif_disp_onlyself. [Skotlex]
+ * Fixed a pair of missing initializers in the clif storage functions.
+ [Skotlex]
+ * @heal no longer displays a healing animation. Fixes the client believing
+ you couldn't be healed more than 32K. [Skotlex]
+ * Now you can use any skills (except encore/dancing ones) while under
+ Longing for Freeding. [Skotlex]
+ * Now you can use any skills while under Marionette Control. [Skotlex]
+ * Fixed npc_checknear's distance check returning the opposite of what it
+ should (false when the range is correct and viceversa) [Skotlex]
+ * Added a warning on item loading when an item is of equippable type but
+ has no equippable position. [Skotlex]
+ * Turning an alliance to an opposition won't work now during WoE [Skotlex]
+ * Slaves can summon other mobs now. The only ones who can't do this are
+ player summoned mobs. [Skotlex]
+ * Merged the following functions for faster processing of items: [Skotlex]
+ clif_storageitemlist + clif_storageequiplist = clif_storagelist
+ clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist
+ clif_itemlist + clif_equiplist = clif_inventorylist
+ Note that the changes are a bit substantial and need proper testing!
+ * Increased max knockback value support to 25. [Skotlex]
+ * [Optimized]:
+ - buildin_npcshopitem memory allocation to calculate before reallocating.
+ [Lance]
+ * Made guild member exp an unsigned int. [Skotlex]
+ * Various cleanups to the npc clicking related functions. Should fix quite
+ some possible crashes from crafted packets. [Skotlex]
+ * Added overflow checks for bonus settings mdef_rate/def_rate. [Skotlex]
+ * Added missing update of INT after a buf. [Skotlex]
+ * Small cleanup of how SC_BLEEDING works. [Skotlex]
+ * Fixed party_foreach_samemap invoking the function on the CASTER instead
+ of on the party members. [Skotlex]
+ * 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) [Skotlex]
+2006/06/09
+ * [Fixed]
+ - Compilation warnings on guild.c and int_guild.c [Lance]
+ * Added structure party_data and party_member_data to the map server to
+ hold party-specific required information about parties including
+ Monk/TK/SG/SN states and party member count. Family information is still
+ missing, and handling of the state should probably be done by the
+ char-server, too... [Skotlex]
+ * party Hp updates are no longer done each time the Hp is modified, but
+ together with the party xy timer. It means HP-bars will be a bit delayed
+ before being updated, but packet consumption should be much less during
+ heated battles. [Skotlex]
+ * Fixed MoM's typo [Vicious]
+ * Fixed map_readafm missing strcpy(afm_name, m->name). [Skotlex]
+ * [Improved]:
+ - npc_click interception on BL_MOB and BL_PC to let sd act accordingly.
+ [Lance]
+ * [Fixed]:
+ - Execution of sleep/sleep2 more than once will hang the script_state.
+ [Lance]
+ * Fixed @mapinfo displaying incorrectly maps with nosave which send you
+ back to your last savepoint. [Skotlex]
+ * Moved guild_exp_rate from a mapserver battle config setting to a char
+ server config. It no longer modifies the total taxed exp as seen on the
+ guild information window, but directly modifies the exp that the guild
+ earns. [Skotlex]
+ * Added an error report and correction when the map server receives a guild
+ from the char-server with more guild members than MAX_GUILD. [Skotlex]
+ * Changed the interval between waterballs back to 125 [MasterOfMuppets]
+ * Fixed a typo in char_sql/char.c, thanks to Euph [MasterOfMuppets]
+2006/06/08
+ * Modified guild exp to be an unsigned int rather than a signed one.
+ [Skotlex]
+ * Fixed @skilltree printing out Unknown job for most targets used.
+ [Skotlex]
+ * Cleaned clif_pvpset to not send the packet to nearby characters when the
+ source is GM-hidden. May help fix the crash on PvP with gm-hidden
+ characters. [Skotlex]
+ * Modified map_freeblock_unlock so that aFree errors will report the
+ file/line that INVOKED the function rather than the function itself.
+ [Skotlex]
+ NOTE: Do NOT disable the memory manager as that will break this change.
+ This change is to be temporarily set until the afree'd error can be
+ resolved.
+ * Updated mob_npc_warp to a three-state config switch. 0 disables. 1 enable
+ only on warps that don't lead to nobranch maps. 2 - enable on all warps.
+ [Skotlex]
+ * Adjusted Don't Forget Me, Defender, Longing to use all val entries, and
+ to hold the speed adjustment value rather than speed penalty (eg: 125
+ instead of 25). [Skotlex]
+ * Cleaned up status_calc_speed so that speed penalties are correctly
+ handled (eg: 25% penalty is speed*100/75, not +speed*25/100). Thanks to
+ Euph for pointing it out and Belle for the speed mechanics. [Skotlex]
+2006/06/07
+ * Fixed Sense using mdef instead of mdef2 [Skotlex]
+ * Fixed item-skills not showing up on login. [Skotlex]
+ * Cleaned up clif_parseLoadEndAck, by testing which packets are required
+ only on first-login and which ones are required on all map-changes.
+ Skill-tree, Exp, Skill Points and most of the basic status are no longer
+ sent on map-change (items, cart data and zeny still need to be sent one
+ very map-change). [Skotlex]
+ * Fixed the mob state not being set to Berserk/Angry correctly after the
+ mob reaches the target's location. [Skotlex]
+ * Added config setting mob_npc_warp, when set to yes, enables mobs to be
+ warped between maps when stepping on a npc-warp. [Skotlex]
+ * Added monster_ai setting &64, when enabled makes a mob run to any nearby
+ npc-warp when their current target has switched maps. [Skotlex]
+ * Added pc_calcexp to calculate individual exp bonuses acquired from exp's
+ source (race bonus cards, SG Exp skills, pk-mode higher level exp) [Skotlex]
+ * pc_gain_exp now also receives the source of the exp, when said source
+ exists, bonuses are applicated as needed. [Skotlex]
+ * Added status_kill when capturing a mob, should take care of the mob not
+ respawning after caputed. [Skotlex]
+ * Fixed item info not displaying the found item id [Skotlex]
+ * Fixed item info not displaying the weight value properly. [Skotlex]
+ * Adjusted status resistances and durations taking as base Viccious's info
+ from the kro guidebook. [Skotlex]
+ * Moved souldrain code from skill_counter_additional_effect to mob_dead. It
+ should display the skill animation correctly now. [Skotlex]
+ * Adjusted several sc rate/time reductions as pointed out by Playtester.
+ [Skotlex]
+ - Luk now plays a luk/10 reduction role rather than a luk/3 one.
+ * Removed char_nick2id from char-sql server as it's no longer needed.
+ [Skotlex]
+ * Fixed quitting the map server not properly saving the storage before
+ deleting it. Thanks to Adam for pointing it out. [Skotlex]
+ * Cleaned status_get_sc_tick/status_get_sc_def to use the status_data
+ function. [Skotlex]
+ * SC_STOP's chance and duration can't be reduced anymore. [Skotlex]
+ * Storm Gust no longer has a 100% chance to freeze by passing mdef, now it
+ has a 300% base chance reduced by mdef and the like as explained out by
+ Tharis. [Skotlex]
+ * Frost Diver/Frost Nova's base freezing chance is no longer affected by
+ target's int. [Skotlex]
+ * [Improved]:
+ - mob_dead not to remove script controlled monsters with player sprites.
+ [Added]:
+ - buildin_mobdeadsit :D [Lance]
+ * [Fixed]:
+ - temp++ gets issued before if(mvp_damage<(unsigned int)md->dmglog[i].dmg) in
+ mob_damage. Thanks to seahorsix. [Lance]
+ * [Fixed]:
+ - Corrected login-server SQL to use *((ulong *)p) instead of (ulong)p [Lance]
+ * [Optimized]:
+ - list and size not being initialized (size get intialized in default: switch case)
+ Eliminated default case and initialized list and size at the beginning. [Lance]
+2006/06/06
+ * Hopefully fixed for sure mobs getting extra stats when changing-class due
+ to the mobs level up setting. [Skotlex]
+ * Removed a piece of code that should no longer be needed due to the
+ combo-skill setting (inf = self, inf2 = no-target-self) which is blocking
+ self-skills from being used on others (pets/mobs should be allowed to do
+ that) [Skotlex]
+ * Added a status_check_skilluse call in Sightblaster to prevent it from
+ hitting hidden/cloaked/act-dead/etc players. [Skotlex]
+ * Fixed firewall counter going down by 2 each hit rather than 1. [Skotlex]
+ * Fixed Soul Burn not zapping away all SP. [Skotlex]
+ * The monsters can level up setting will not take effect when the mob's
+ level is LESS than their db counter-part (should prevent under-leveling
+ causing underflows and semi-immortal mobs) [Skotlex]
+ * Fixed mvp-exp calculations being messed up with more than one attacker.
+ [Skotlex]
+ * Changed the mob exp race bonus so that each player gets their own bonus,
+ rather than the killer's bonus applying to everyone. Still not the
+ "correct" way, but one step closer to it. [Skotlex]
+ * [Fixed]:
+ - Allocation of event_list in guild_npc_request_info to aCalloc so
+ memcpy(ev->name,event,strlen(event)) will have a null terminator. [Lance]
+2006/06/05
+ * Fixed a crash when using SL_SMA and the "combo" ain't ready. [Skotlex]
+ * Hopefully fixed changing a mob's class causing them to get all sort of
+ stat bonuses due to the mobs-level-up setting. [Skotlex]
+ * Changed hit, flee, cri, flee2, def2 and mdef2 to signed short, def, mdef
+ to signed char to correctly account for cards with penalties in said stats.
+ [Skotlex]
+ * Fog of Wall won't affect the caster now in any way. [Skotlex]
+ * Added clif_fixpos packets before attacking for the first time to clear
+ any position sync issues with the client. [Skotlex]
+ * Fixed skill_unitsetting using layout->count for the for instead of
+ group->count [Skotlex]
+ * Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly
+ increase dex/agi by 40% per level. [Skotlex]
+ * Fixed char-sql server not deleting character variables when deleting a
+ char. [Skotlex]
+ * Corrected cloaking not ending on attack if you are near a wall. [Skotlex]
+ * Updated pc_bonus to use cap_value on all status_data modifiers to prevent
+ overflows/underflows. [Skotlex]
+2006/06/03
+ * Fixed @mi/@mobinfo not showing the name collumns correcly [shadow]
+ * Solved the bug that made firewalls only castable a few times until [MasterOfMuppets]
+ you relogged. Thanks to Euph for the fix.
+ * Added variable other_mapserver_count to chrif.c which holds total count
+ of connected map-servers. By using this we prevent sending unnecessary
+ packets to the char-server when there's no more map-servers connected.
+ [Skotlex]
+ - Affected packets are whispers, announces, party messages, guild messages.
+2006/06/02
+ * Fixed Visual Studio 7.1 Solution File (Login TXT and Map TXT were removed)
+ * Fixed a bug in unit_can_reach_bl which breaks path seeking when the
+ target is near obstacles. [Skotlex]
+ * Updated offensive use of Sanctuary to function like on the official servers [MasterOfMuppets]
+ * Changed the interval between waterballs from 150 to 250 milliseconds [MasterOfMuppets]
+ * Corrected clif_parse_takeitem to ALWAYS return a NAK packet when it
+ fails. Fixes cases where the client gets "stuck" and refuses to let you
+ pick any items. [Skotlex]
+ * Removed the walk delay from firewall and changed its knockback [MasterOfMuppets]
+ to 1 tile to make it act more like in the official servers.
+ * Some cleaning of the mob slave ai. [Skotlex]
+ * Corrected Brandish Spear to work on levels above 10. [Skotlex]
+ * Updated Two-HandQuicken, One-HandQuicken to give 30 +2*lv% aspd-rate for
+ skill levels above 10 (meant for boss casted skills) [Skotlex]
+ * Fixed Spear-Quicken messing with the calc_flag [Skotlex]
+ * Fixed Freeze/Stone/Benedictio not changing your elemental LEVEL to 1.
+ [Skotlex]
+ * [Fixed]
+ - Yet another compilation warning. [Lance]
+2006/06/01
+ * Altered status_calc_pc so that equipment scripts are ran before
+ card-scripts. [Skotlex]
+ * Fixed pc_bonus to not underflow/overflow when adjusting def/mdef.
+ [Skotlex]
+ - These two together, should fix Tao Gunka Card.
+ * npc_debug_warps() will now be invoked if warp_point_debug is set.
+ [Skotlex]
+ * Updated item_db.sql/mob_db.sql to current. [Skotlex]
+ * Fixed NPC_SELFDESTRUCTION not showing nor dealing damage. [Skotlex]
+ * NPC_TRANSFORMATION/NPC_METAMORPHOSIS will now preserve the original mob
+ without removing it when the skill level is greater than one. [Skotlex]
+ * Added SC_DANCING declaration in the Status Change tables to signal it
+ modifies Walk speed. [Skotlex]
+ * Fixed pc_damage setting your canlog_tick even if the damage has no source
+ (eg: poison, berserk) [Skotlex]
+ * Berserk's aspd bonus now stacks with other aspd bonuses, but is still
+ affected by Quagmire/Forget-me-not. [Skotlex]
+ * Corrected setting slaves_inherit_mode to not apply to morphosis skills.
+ [Skotlex]
+ * Corrected pc_setoption to invoke status_calc_pc when getting/removing the
+ cart. [Skotlex]
+ * Fixed @mobinfo displaying the wrong element. [Skotlex]
+ * Fixed Autoblitz taking into account target's luck rather than attacker's
+ [Skotlex]
+ * Fixed slaves warping endlessly to their master when the master-slave
+ distance exceeds 30. [Skotlex]
+ * SC_ORCISH will now be dispelled on logout (if debufF_on_logout is set)
+ [Skotlex]
+ * Removed attackrange/attackrange_ from TBL_PC, corrected clif.c using the
+ incorrect range variable. [Skotlex]
+ * You can now equip/unequip stuff while the storage is open. [Skotlex]
+2006/05/31
+ * Fixed Soul Drain not really giving you SP [Skotlex]
+ * [Fixed]:
+ - Suppressed compilation warning in chrif.c [Lance]
+ * [Fixed]:
+ - Guys can't go across map-servers :( [Lance]
+ * [Fixed]:
+ - Restoration and saving of sd->npc_id must be done every time. [Lance]
+ * Added back the Freeze/Petrify adjustments of -50%def and +25%mdef (when
+ where these lost?). Thanks to Buuyo for pointing it out. [Skotlex]
+ * Corrected the mob_ai&2 setting triggering rude-attacked due to can't walk
+ delay. [Skotlex]
+ * Made the char_name_option char_athena.conf setting apply to parties and
+ guilds as well. It cannot be applied to pets yet without adding a
+ change-name-request interserver packet. [Skotlex]
+ * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them.
+ [Skotlex]
+ * Added function char_read_fame_list for famelist reading. Invoked it on
+ init, and made it be sent automatically to connecting map servers.
+ [Skotlex]
+ * Some cleaning of the fame-list reading code. [Skotlex]
+ * Some cleaning of the fame-update code, fixed a logic bug which made the
+ ranking list fail to display the correct ranker names. [Skotlex]
+ * Removed typedef bool from socket.h and included cbasetypes.c instead.
+ [Skotlex]
+ * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in
+ status_calc_bl. [Skotlex]
+ * [Fixed]:
+ - Incorrect SQL syntax in login.c (missing collumn) [Lance]
+ * [Improved]:
+ - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance]
+ * [Fixed]:
+ - nullpo in pet.c caused by equipping without checking if the pet is available.
+ [Lance]
+ * [Fixed]:
+ - Latest client support completed! [Lance]
+ * [Fixed]:
+ - Missing #include for cbasetypes.h in login server SQL.
+ - Logic errors in run_script [Lance]
+ * [Added]:
+ - Partial support for latest login packet. But it seems to have a new security
+ module. [Lance]
+2006/05/30
+ * [Improved]:
+ - Fake NPC interface to use real NPCs.
+ - Scripting interface to restore and save sd->npc_id. [Lance]
+ * Added function pc_check_skilltree for checking if you unlocked new
+ tree-skills when raising non-passive skills. [Skotlex]
+ * Fixed flee/hit calculation in status_calc_bl to account for bonuses from
+ the base status. [Skotlex]
+ * [Fixed]:
+ - Compatibility problems in login.c [Lance]
+ * Fixed pets ignoring can-act delays for skill usage. [Skotlex]
+ * [Added]:
+ - Mercenary.c in VS.NET 2005 project files
+ [Improved]:
+ - loginlog using unsigned long `ip` field.
+ (Please check for compatibility problems). [Lance]
+ * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain
+ bonuses (like effect-on-hit) to stack. [Skotlex]
+ * slaves inherit speed setting will now work regardless of whether the
+ slave or master has the MD_CANMOVE mode bit. [Skotlex]
+ * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex]
+ * AL_TELEPORT will fail when used by slave mobs. [Skotlex]
+ * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable
+ attacks. [Skotlex]
+ * Fixed status_damage not setting your HP to 0 when you died [Skotlex]
+ * Fixed the pcbonus2 warnings using the wrong value before printing the
+ invalid Element error. [Skotlex]
+ * Fixed underflow issues when calculating dmotion. [Skotlex]
+ * Fixed Absorb Spirit Spheres [Skotlex]
+ * Added battle_config min_chat_delay (default 0, battle/client.conf)
+ specifies in ms what is the min delay between player sent chats
+ (whisper/global/party/guild). Messages that exceed this threshold are
+ silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the
+ player?) [Skotlex]
+ * [Fixed]:
+ - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance]
+ * Rewrote/cleaned up @petfriendly. [Skotlex]
+ * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex]
+ * Updated attr_fix_table reading code to account for ELE_MAX (will
+ correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex]
+ * Aggressive mobs will now use battle_check_range rather than mob_can_reach
+ to decide whether to lock-on or not to a target within sight-range. [Skotlex]
+ * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex]
+ * Added error messages in pc_bonus* functions when an invalid element is
+ passed to the relevant bonuses. [Skotlex]
+ * [Optimized]:
+ - clif_specialeffect to use the enums.
+ [Improved]:
+ - buildin_specialeffect and buildin_specialeffect2 to accept effect area
+ definition. [Lance]
+ * [Added]:
+ - Visual Studio .NET 2003 includes for mercenary.c [Lance]
+ * Removed the on-die specific code from unit_remove_map and placed it on
+ the corresponding *_dead functions. unit_remove_map should never assume the
+ char died, it is just a "remove from map" function. [Skotlex]
+ * Updated status_damage to handle the general death code (clearing status
+ changes, clearing skill related data, sending death packet, etc). The
+ return value from the *_dead functions will tell it what to do or not with
+ the object (death aborted, clear it from map/memory, etc) [Skotlex]
+ * Cleaned up pc_dead to take advantage of the fact that status changes are
+ not ended until after the function. [Skotlex]
+ * Disabled ontouch npcs triggering on hidden/chase-walk characters.
+ [Skotlex]
+ * Updated/adapted current Homun code to use the status_data update.
+ [Skotlex]
+ * Updated map-server Makefile to compile mercenary.* files. [Skotlex]
+ * [Fixed]:
+ - Pets attacking even master is dead. [Lance]
+ * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0
+ (negative values should be allowed when attack is absorbed by target's
+ element) [Skotlex]
+2006/05/29
+ * [Fixed]:
+ - Missing ';' in item #4358 [Lance]
+ * [Fixed]:
+ - Missing maps in map index database. [Lance]
+ * [Fixed]:
+ - Battle mechanics in battle_check_target [Lance]
+ * [Fixed]:
+ - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing.
+ [Lance]
+ * Cleaned up friend list saving and fixed loading of friends.txt file
+ (char-txt) [Skotlex]
+ * Added the Arunafeltz maps, not tested yet [Playtester]
+ - someone with an up-to-date client should test them
+ * Fixed pc_gainexp resetting your exp to 0 rather than adding it in...
+ [Skotlex]
+ * Corrected aspd calculation code to avoid negative overflows. [Skotlex]
+ * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR
+ instead of BL_PC and BL_MOB [Skotlex]
+ * [Fixed]:
+ - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance]
+ * Removed Undead being inmune to poison status. [Skotlex]
+ * Removed speed penalty from SC_SKA [Skotlex]
+ * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex]
+ * SC_DODGE won't be dispelled on death now. [Skotlex]
+ * [Fixed]:
+ - pc_follow_timer possible triggering crash.
+ - pc_reg_received to use battle_status.hp instead of status.hp
+ [Added]:
+ - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance]
+ * Added a division by zero check in mob_dead to prevent the (impossible)
+ case where a mob dies with received damage of zero. [Skotlex]
+ * Modified skill_get_range2 to return range 9 for skills with range 0 for
+ Non-Players. This usually signals Self skills, and mobs/pets should be able
+ to use them in other characters. [Skotlex]
+ * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex]
+ * Fixed draining when the amount drained is negative (invoke zap rather
+ than heal) [Skotlex]
+ * Implemented GS_FLING as per the current skill description. [Skotlex]
+ * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than
+ status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex]
+ * Added some missing SC_* entries on the initial listing (potion related
+ and speed up ones) [Skotlex]
+ * Fixed function declaration of map_getcellp() [Skotlex]
+ * [Fixed]:
+ - status.c:920: warning: 'mbl' might be used uninitialized in this function
+ - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function
+ - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function
+ - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance]
+ * [Optimized]:
+ - Removed unused variable (account_id) in storage_guild_storagesaved.
+ * [Optimized]:
+ - Removed unused checks for unsigned data type and possible logic error for
+ char type (gcc treats char as unsigned). [Lance]
+ * [Fixed]:
+ - Relogging in with 0 HP didn't trigger dead event. [Lance]
+2006/05/28
+ * Added functions status_revive, pc_revive and mob_revive to handle revival
+ (it doesn't handles player respawning, though). Fixed reviving @ commands.
+ [Skotlex]
+ * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes
+ Bladestop causing an unknown status change message). [Skotlex]
+ * Fixed MSS_DEAD state skills not triggering. [Skotlex]
+ * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets]
+ * [Fixed]:
+ - script functions that doesn't pass references, thanks to End_of_exam. [Lance]
+ * [Protected]:
+ - clif_parse_LGMmessage from possible hacks [Lance]
+ * Fixed unable to store n items into storage unless n was the total amount
+ of items you had. [Skotlex]
+ * Suppressed compilation warnings (unsigned and signed mismatches) [Lance]
+2006/05/27
+ * Added structure status_data which holds status-related information (str,
+ agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc)
+ and weapon_atk structure with the weapon specific info (atk, atk2, element)
+ to be used by all combat structures (TODO: Homun needs to be updated to use
+ it). This in change involves a LOT of changes throughout the code and many
+ optimizations were done as well. Partial list (see svn changelog for complete
+ changes): [Skotlex]
+ - NOTE: Changes are substantial! I tested a bunch of stuff and all the
+ skills I changed the most, but it is possible there are unnoticed bugs
+ remaining to fix!
+ - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data.
+ - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead
+ - Added status functions to deal with damage and healing (status_damage,
+ status_heal, status_percent_change) and a bunch of defines for easier
+ handling of them (status_percent_heal, status_percent_damage,
+ status_fix_damage, status_kill, etc). Objects must be hurt/healed through
+ THIS, pc_damage/mob_damage most no longer be directly invoked!
+ - Rewrote and cleaned up battle_calc_misc_attack
+ - Merged config options pc_attack_attr_none, mob_attack_attr_none,
+ pet_attack_attr_none into attack_attr_none (type 4)
+ - Removed config options player_defense_type, monster_defense_type,
+ pet_defense_type in favor of weapon_defense_type
+ - Modified skill_calc_heal to take into account the MEDITATION bonus.
+ - Modified Slim Pitcher so it will work when casted by non-players. Will
+ now also work with SP-healing items.
+ - Rewrote Freedom of Cast code to use function status_freecast_switch to
+ switch adelay/speed when cast begins/ends.
+ - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for
+ easier updating when used in conjunction with ground skills.
+ - Fixed Asura Strike being usable from within a combo regardless of combo skill.
+ - Added status_calc_bl which does status-change related calculations using
+ as base the base_status of the bl object and the SCB_* flag passed. This is
+ invoked on status changes, and status_calc_pc will no longer be invoked
+ (which results on much faster status-change calculations).
+ - pc_clean_skilltree will now also remove item-granted skills.
+ - Learning skills will now only invoke status_calc_pc when the skill is passive.
+ - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related
+ packets and functions ONCE regardless of skill-levls earned.
+ - Cleaned up pc_ regen related functions.
+ - Made player-sprite mobs have item pickup animation and walkdelay when taking items.
+ - Clones will copy a player's base status rather than battle status (so
+ status-change alterations are not cloned)
+2006/05/26
+ * Part B of the homunculus code. [blackhole89]
+ While most of the homunculus handling functions are in now, it still lacks
+ code required for players to create it.
+ Given I haven't screwed up, you could master yourself one through the DB though.
+ * Fixed crashing in mob.c [Lance]
+ * Patches to allow everything to work right. + 1 more sample script. [Lance]
+ * Mob control engine tested 99% working so far. [Lance]
+ * Change scripting engine's NPC scope vars to dot (.) style.
+ * Improved and (should be fully) fixed the mob control engine. [Lance]
+ * Fixed typos in char.c [Lance]
+ * Rewrote fame rank lists system to reduce char-server load, as requested by
+ Skotlex: now it has a copy of those lists, and updates only the proper one
+ when needed instead of rebuilding all from saves everytime (which required
+ to always save the character before rebuilding the lists) [DracoRPG]
+ - Note it hasn't been compiled nor tested with SQL, please do it for me
+2006/05/25
+ * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional
+ int-based damage component (which is added right before elemental
+ modifiers) as described by AuronX. Pending further refining. [Skotlex]
+ * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus]
+ Fixed atcommand @request MSG numbers accordinly.
+ On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too
+ * Added NoVending mapflag. You may disable vending in the streets [Lupus]
+ * Increased capacity for Account Variables to 64 [Skotlex]
+ * Reverted Intravision implementation to that of stable's. [Skotlex]
+ * Corrected Login Server taking it's first argument as both login config
+ and lan config. [Skotlex]
+ * Fixed mob control commands.
+ * Fixed memory leak in scripts (again). Still have a few lying. [Lance]
+2006/05/24
+ * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout.
+ * Item sharing now shares the same rules as exp sharing (no sharing when
+ dead, or idle, etc) [Skotlex]
+ * Fixed summoned slaves being able to cast onspawn summon-skills (slaves
+ aren't supposed to be able to call minions) [Skotlex]
+ * The clif_skill_poseffect packet will not be invoked in Snap unless the
+ skill was successful. May fix the client-position lag. [Skotlex]
+ * Merged item_db.sql from stable (the one from stable was more recent than
+ the one of trunk...) [Skotlex]
+ * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex]
+ * Corrected a pair of incorrect sql query parsing logic in the login-sql
+ ban request packet. [Skotlex]
+2006/05/23
+ * Corrected mob angry mode, now it only "restores" itself after being hit
+ when the mob has no target within their range of sight rather than on
+ picking a new target. [Skotlex]
+ * Fixed wedding sprite where it would stay active after unequipping. [Zido]
+ * Some cleanup of run_script, should fix the memory leak there. [Skotlex]
+ * the charname request hack message has been downgraded to only include
+ GM-invisible characters. [Skotlex]
+ * corrected clif_charnameack to send negative ID when a disguised player
+ asks for it's own disguised name. [Skotlex]
+ * Cleaned up the disguised target-id checks taking into considering that
+ the only character that sees a negative ID is the same disguised character.
+ [Skotlex]
+ * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce
+ defense), Investigate and Icepick will now use the final def/vit-def values
+ rather than the base ones. [Skotlex]
+ * The move-enable condition checks for skills are now checked for only when
+ on skill use, not at cast-end time. [Skotlex]
+ * Corrected clif parse name request failing on disguised characters [Skotlex]
+ * Corrected Soul Drain draining from all non-ground-based skills including
+ non-magic attacks. [Skotlex]
+ * Corrected pc_setoption to change the option and then change class.
+ changing option-wedding will automatically convert the view-class as well.
+ [Skotlex]
+ * Corrected the 15% drop rate increase when killing higher level mobs in
+ pk-mode triggering for all mobs with lower level than yourself. Thanks to
+ Vayu. [Skotlex]
+ * Fixed typo (this time it's not my fault) in script_reload() clearing the same
+ db each time o_o [Lance]
+ * Fixed sleep command. [Lance]
+ * Added 'setd' support for local NPC scope (') variables. [Lance]
+ * [Scripting Engine Update] New variables are ready to be used. [Lance]
+2006/05/22
+ * Updated skill_delayfix to return 0 for mobs since they have no skill
+ delay other than the one specified in mob_skill_db [Skotlex]
+ * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to
+ Vayu for pointing it out. [Skotlex]
+ * status_get_sc_tick will now use directly Stun's formula rather than
+ invoking the status sc chance once. [Skotlex]
+ * Fixed a possible null pointer in script command misc_effect [Skotlex]
+ * Modified Investigate to take into consideration final def/vit-def rather
+ than base values for damage adjustment. [Skotlex]
+ * WARNING: New scripting system contains memory leak
+ TODO: Free all scripts using script_free_code() instead of old methods. [Lance]
+ * Excluded idle and auto-trade party members from TK_POWER list. [Lance]
+ * Fixed compilation errors.
+ Tidy up jobmaster for easy debugging. [Lance]
+2006/05/21
+ * Part A of the Homunculus code.
+ This only features the structures, status_* and clif_* (packets) and is
+ not functional yet in any conventional way, but doesn't interfere
+ with present functionality either.
+ Main purpose is helping me to keep my work organized. [blackhole89]
+ * Fixed the "fake" mute status bug. [Zido]
+ * Speed up array size calculation and deletion. [Lance]
+ * Player must learn the skill before doing auto-spell [Lance]
+ * Exploit prevention in clif_parse_NpcStringInput [Lance]
+ * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus]
+ * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus]
+2006/05/20
+ * grfio_final moved back if any of GRF overriding is enabled so servers
+ with such configuration will not have different values after reloading. [Lance]
+ * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance]
+ * Abit of alterations to login-server. [Lance]
+2006/05/19
+ * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance]
+ * Small change in pc_additem that could be fixing the current bug with new
+ items not getting added. [Skotlex]
+ * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex]
+ * Likely fixed the mob-skill random picking behaviour causing infinite
+ loops sometimes. [Skotlex]
+ * Modified mobskill_use behaviour to pick a random starting point and check
+ skills from that, rather than always checking from first to last. Fixes
+ skills with high priority blocking skills lower down in the list from
+ triggering. [Skotlex]
+ * Updated mob ai behaviour so that mobs use IDLE state skills when their
+ current target cannot be reached for melee fighting. [Skotlex]
+2006/05/18
+ * Added 5 config settings to adjust damage in pk-mode servers (misc.conf)
+ [Skotlex]
+ * Fixed mob_max_skilllvl being capped to 11! [Skotlex]
+ * Rewrote/cleaned up several functions in storage.c [Skotlex]
+ * Optimized pc_additem comparisons to account for items with more than four
+ slots. [Skotlex]
+ * Updated clif.c to enable retrieval of items from cart/storage while
+ trading. Exception is retrieving items from the cart while vending.
+ [Skotlex]
+ - The reasoning is that an ongoing trade will not get "corrupted" if you
+ earn items before it is commited (only if you lose items from your
+ inventory), and it is an annoyance when you realize the stuff you want to
+ trade is on the cart/storage.
+ * skill reiteration code now does not checks for the trigger-area of the
+ skill in the case of non-players, which means mobs can now place traps in
+ cells adjacent to each other. [Skotlex]
+ * Applied an experimental weather code that should lower bandwidth usage to
+ near-none, which's only disadvantage should be the weather not clearing out
+ until moving to another map (even when the mapflag is removed from the
+ current map). Please test and report if there's any anomalies with it.
+ [Skotlex]
+ * NPC_AGIUP will now give movement boost of 50% [Skotlex]
+ * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex]
+ * MO_BODYRELOCATION will send the slide packet with the actual src's
+ coordinates rather than selected tile. [Skotlex]
+2006/05/17
+ * Modified mob_can_changetarget to return true always when the new target
+ is the provoked-by character. Fixes provoke not making the mob change
+ target when it already is locked on another player. [Skotlex]
+ * Added check to clear previous skill when combo time ends. Should fix TK
+ Rankers being unable to initiate a combo with the same kick their previous
+ combo was finished with. [Skotlex]
+ * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex]
+2006/05/16
+ * Modified "hide woe damage" to send the number of hits rather than 1 as
+ damage Because when the damage is less than the number of hits, the client
+ will display MISS. [Skotlex]
+ * Fire Pillar will now do 200%MATK damage per hit when level is >10.
+ [Skotlex]
+ * Blood Drain always hits now. [Skotlex]
+ * Fixed Mob Area Skills not updating their use-time (rendering their skill
+ delay useless) [Skotlex]
+ * Search free cell will now skip picking the center-tile as target
+ location. Will prevent slaves from walking on top of their master, or mobs
+ placing stuff right under themselves with the "around" target conditions
+ among other things. [Skotlex]
+2006/05/15
+ * Small changes to the skill.conf
+ - Monsters now can place ground skills on top of each other by default
+ - Land_Skill_Limit format changed and set to "Only Players" by default
+ * When reading mapflags, when a map is set to be pvp or gvg, the other will
+ be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex]
+ * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the
+ skill level is above 10. [Skotlex]
+ * Sorted out the item_data structure, getiteminfo should work correctly
+ now. [Skotlex]
+ * KA* skills can now be casted on other Soul Linkers as well without the
+ Spirit requirement. [Skotlex]
+ * Soul Drain will now show the SP drained regardless of drain display
+ settings. [Skotlex]
+ * SC_COMBO state will now end in skill_attack rather than
+ skill_check_condition (as it is required there to apply damage bonuses
+ based on combo-casted skills) [Skotlex]
+ * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096)
+ [Skotlex]
+ * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode
+ servers. [Skotlex]
+ * When removing a castle's owning guild, the char servers will erase the
+ guardian data now. [Skotlex]
+ * Changed the behaviour of immobile mobs when they can't chase their
+ target. Rather than using a longrange skill and then unlocking, they will
+ use an attack/angry state skill and then unlock. [Skotlex]
+ * Some adjustments of how disguising + gm-hiding work together. [Skotlex]
+ * Fixed clif_GlobalMessage being the exact same function as clif_message
+ (the first should send to ALL_CLIENT and the later should send to
+ AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex]
+ * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex]
+ * Characters in vending are now always considered "idle" if the
+ idle_no_share setting is active. [Skotlex]
+ * Players with OPTION_INVISIBLE should not be sent to clients. [Lance]
+ * Remaining fixes for item scripts. [Lance]
+ * Added NPC event deprecated warnings to ease debugging old scripts. [Lance]
+
+2006/05/12
+ * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance]
+ * Bugfix on fake npc [Lance]
+ * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89]
+ * Reverted again the change that stuns the caster on Ske, Ska, Swoo when
+ the target is a nonplayer (rather than always) [Skotlex]
+ * Modified mob_spawn_once so that coordinates -1,-1 are "random around the
+ player" while 0,0 are random around the whole map (regardless of whether
+ there's a player attached or not) [Skotlex]
+ * Knockback will no longer work on traps during woe. [Skotlex]
+2006/05/11
+ * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage
+ [Skotlex]
+ * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively)
+ of 40% per level. [Skotlex]
+ * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows.
+ [Skotlex]
+ * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex]
+ * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex]
+ * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex]
+ * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2)
+ [Skotlex]
+ * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10
+ secs (reducable) if you target a mob that already has Swoo active. [Skotlex]
+ * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to
+ Tanaous [Skotlex]
+ * Added back the missing code that substracts arrows when normal-attacking.
+ [Skotlex]
+2006/05/10
+ * Changed the state of Asura back to explosionspirits, added a hardcoded
+ move_enable check when invoking Asura and NOT while in BladeStop or a
+ Combo. [Skotlex]
+ * Added back SC_XMAS to status.c, it got lost sometime during all the
+ previous reworkings. [Skotlex]
+ * Changed wedding costumes to use setoption rather than changebase.
+ [Skotlex]
+ * Modified setoption so that flag 1 or no flag adds an option, and flag 0
+ removes it. [Skotlex]
+ * Updated script_commands with the new behaviour. [Skotlex]
+ * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather
+ than 15. [Skotlex]
+ * Users are now able to use their own dnsbl servers (login_athena) [Zido]
+
+2006/05/09
+ * Rewrote/cleaned up trade.c for a more clean trading implementation.
+ [Skotlex]
+ * Added @request commands, sends a request to all connected GMs of
+ lowest_gm_level or above as a whisper message. Defaults to gm level 20
+ users (UNTESTED). [Skotlex]
+ * Modified @commands to use Meruru's code which is faster and does a fair
+ attempt at tabulating the commands presented. [Skotlex]
+ * Updated SKA to return a random value between 0 and 99 each time
+ status_get_def is invoked. [Skotlex]
+ * Updated Making Arrow to not include unidentified items in the list.
+ [Skotlex]
+ * Reduced drop slots from 15 to 10. [Skotlex]
+ * Updated mob_db.sql with the current data. [Skotlex]
+ * Updated setoption script command to receive a second (optional) argument
+ flag. If the flag is 1, the option is added to what the player currently
+ has; likewise using flag 2 removes only that option. No flag (or any other
+ value) is the older behaviour of removing all other options and setting
+ specificly what is passed. [Skotlex]
+ * Updated script_commands information for setoption due to this change.
+ [Skotlex]
+ * Small fix in npc-created chat rooms to properly include the terminating 0
+ on the chat's event. [Skotlex]
+ * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer
+ get reduced by 50% regardless of who is standing on the fog. [Skotlex]
+ * monster_ai&2 will now trigger the rude-attacked skill when the mob can't
+ move and the attacker is out of it's attack range. [Skotlex]
+ * Added missing icon for Joint Beat [Skotlex]
+ * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex]
+ * Treasure chests will now be excluded from the mob-drop listings
+ (@whodrops) [Skotlex]
+ * Fix on pc_skill which fixes overlapping when one gets more than one bonus
+ for the same skill. [Skotlex]
+ * Updated main.sql's loginlog table structure. [Skotlex]
+ * Added svn_update6533.sql to update the loginlog structure as suggested by
+ theultramage. [Skotlex]
+ * Cleaned up somewhat the implementation of BladeStop. [Skotlex]
+ * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet)
+ when crafted for non-players. [Skotlex]
+ * 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/blocked) [Skotlex]
+ * Fixed a possible counter overflow in attacked_count, changed the var size
+ to unsigned char since the code can handle the overflow now. [Skotlex]
+ * Multiple targets again reduces armor defense, as reported by Tharis.
+ [Skotlex]
+ * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex]
+ * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex]
+2006/05/08
+ * Reverted the change that was making ES skills stun the caster always.
+ [Skotlex]
+ * Removed the fixpos packet which is sent whenever you are hit while moving
+ as Aegis doesn't sends this packet neither. [Skotlex]
+ * ES magic will now put the caster on stun for 0.5 secs regardless of
+ whether the skill-target is a mob or not. [Skotlex]
+ * 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.
+ [Skotlex]
+ * Added clif_ParseAdoptRequest which does the basic adoption handling. More
+ checks and the reply packets still need to be coded in. [Skotlex]
+ * Happy State and TK stances won't dispel on death now. [Skotlex]
+ * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in
+ skill_check_condition now. [Skotlex]
+ * Modified TK-ranker infinite combos to behave as described by AuronX.
+ Refer to his thread in the development section for details. [Skotlex]
+ * Made all Soul Link Spirit skills not be castable on self. [Skotlex]
+ * Changed rate of NPC status effect skills to 50+10*lv% base chance
+ (guessed, but better than 100% for all levels) [Skotlex]
+ * Changed max level of NPC status effect skills to 5 [Skotlex]
+ * Increased max number of tries to find a random spot in maps to 1000 since
+ some maps have so many non-walkable tiles it's hard to find one in just 100
+ tries. [Skotlex]
+ * status_set_viewdata will remove the Wedding Option status when you set a
+ class that is not wedding. [Skotlex]
+ * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex]
+ * idletime will now be updated on attack-request, not on sit/standup
+ [Skotlex]
+ * Party members sitting will no longer be considered idle. [Skotlex]
+ * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used
+ with the disguise/undisguise script commands instead). [Skotlex]
+ * Moved Sharp Shooting display to the block with Auto-Counter (since that's
+ the other skill that can show critical as well) [Skotlex]
+ * Corrected some fields in the standing still packet (guild emblem being
+ stored as a Long when it should be Short) [Skotlex]
+ * Modified most fields of view_data to be unsigned shorts rather than
+ signed ones. [Skotlex]
+ * On-Touch NPCs will now make you stop walking when you trigger them.
+ [Skotlex]
+ * ShadowJump/JumpKick will make you land on the target's cell now.
+ [Skotlex]
+ * Fixed Kaahi triggering only once per skill duration. [Skotlex]
+2006/05/07
+ * Fixed readme/changelog.html [KillerBox]
+ * Removed old logs. [Lupus]
+ TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index
+2006/05/05
+ * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc
+ before sending one (as it's not required to send twice).
+ * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps
+ players and still continues execution to work). [Lance]
+ * Updated item_db.sql to current. [Skotlex]
+ * Fixed a bug in @commands, most likely the reason some people were still
+ getting crashes. [Skotlex]
+ * Fixed @commands not showing the last available commands (unless the total
+ amount of commands is divisible by ten) [Skotlex]
+ * Added a npc-script-event cache to avoid looking up event-scripts every
+ time they need to be executed. Events cached are all those defined in
+ script_config (on login, logout, mapchange, death, kill, level up) [Skotlex]
+ - Since the cache holds direct pointers to the npcs/events, do NOT unload
+ the related NPCs or you'll get dangling pointer crashes. However,
+ @reloadscript will work fine.
+ - Set the etc_log to on to see a summary of npcs/events loaded for script
+ execution on startup.
+ * The Rest bonus activated by using /doridori while in rest should now
+ trigger with all the class tree (TK/SL/SG) [Skotlex]
+ * Fixed Kaupe always triggering when the one who was under Kaupe was a
+ player rather than the one attacking... [Skotlex]
+ * /doridori now won't double the HP/SP regen of TKs, it only activates
+ their "happy" state. [Skotlex]
+ * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex]
+ * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex]
+ * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills
+ (even if there's no other TK around). [Skotlex]
+ * 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 (battle/monster.conf) [Skotlex]
+ * Kaupe now will only block all skills of players, for non-players, only
+ normal attacks can be missed. [Skotlex]
+ * 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.
+ [Skotlex]
+ * OnEquip scripts will now trigger on log-on. [Skotlex]
+ * Infinite Endure will no longer give mdef bonus. [Skotlex]
+ * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to
+ start/end infinite endure. [Skotlex]
+ * Fixed Kaahi's SP cost per heal. [Skotlex]
+ * Now when walkdelay is set to 0, characters will stop walking when hit,
+ but will not have any walk delay. (previously setting walk delay to 0 would
+ not even stop characters from walking when hit) [Skotlex]
+2006/05/04
+ * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido]
+ * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex]
+ * Some clean-ups in the mob_ai [Skotlex]
+ * Improved atcommand autoloot, now displays droprate in percents and notices
+ player if autoloot is already on or off. Also simplified the code [Harbin, Kain],
+ commited by erKURITA
+ * Added one grace range in the mob_loot search function which should fix
+ mob_can_reach failing when invoked with the same distance that distance_bl
+ returned. [Skotlex]
+ * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex]
+ * Eska is now usable on bosses. [Skotlex]
+ * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex]
+ * clif_skill_failed will print out a debug line with the skill_id (since
+ the current null_po does not helps at all to fix it) [Skotlex]
+ * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex]
+ * Rewrote Kaahi to behave as it should. It will heal whatever amount of
+ damage accumulates in the time2 interval (500ms by default) after being
+ hit. [Skotlex]
+ * Changed skill_unit_move_unit_group to enable moving of all types of
+ ground-skills except ensembles (fixes warmth not following you) [Skotlex]
+2006/05/03
+ * Kaahi now triggers every 500ms rather than on every hit (but it only
+ heals if in those 500ms an attack that would previously trigger Kaahi has
+ taken effect). In other words, it works just like before, except damage
+ gets "buffered" into 500ms slots. [Skotlex]
+ * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex
+ * Knowledge will now only trigger if you logon to the memorized map, not
+ walk into it. [Skotlex]
+ * Corrected @whomap directly invoking msg_table[] rather than msg_txt()
+ [Skotlex]
+ * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong
+ and not fix the pet issue, but I doubt it'll cause any problems that won't
+ be fixed by making the pet move. [Skotlex]
+ * Updated Charge Attack's state from none to move_enable. [Skotlex]
+ * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex]
+2006/05/02
+ * Fixed standing up not really standing you up. [Skotlex]
+ * 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. [Skotlex]
+ * 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. [Skotlex]
+ * Implemented desperado as explained by Rockman-EXE. The skill-effect is
+ not showing up though, I'll need some logged packets to see what's missing.
+ [Skotlex]
+ * Removed the unit_can_move checks in skill cast-end, they should be
+ performed in skill_check_require when the skill's state is move_enabled.
+ [Skotlex]
+ * Changed extremity fist's state to move_enabled, the explosion spirits
+ check is now hardcoded. [Skotlex]
+ * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with
+ Haplo. [Skotlex]
+ * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are
+ impossible to steal unless you have at least 100% steal-rate (where steal
+ rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[
+ * Cleaned up clif_parse_action_request to enable sitting/standing while in
+ shops, interacting with npcs, etc. [Skotlex]
+ * Kaite now works against all types of spells. [Skotlex]
+ * Kaupe now works against all skills. [Skotlex]
+ * Sanctuary now won't damage non-enemies. [Skotlex]
+ * Blessing now will always give you bonus stats even if you are wearing
+ undead armor. [Skotlex]
+ * Modified how Rogue's treasure works so that you get +1% to your steal
+ rate rather than +0.01% to the final rate. [Skotlex]
+ * Rewrote Warmth to use ground-skill-units, it should behave now like in
+ officials (implementation is not quite the same, but it should yield the
+ same effects while consuming less bandwidth). "Stacking", as it's called,
+ is possible now, but limited to eA's minimum timer skill interval (100ms).
+ [Skotlex]
+ * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than
+ +5+lv to all stats (as explained by Playtester and Tharis on how the skill
+ behaves). [Skotlex]
+ * Allowed SG_FEEL memorizing the same map for all three. [Skotlex]
+ * SC_FUSION won't end when you die now. [Skotlex]
+2006/05/01
+ * Added knockback when you run into a wall during running. However
+ position is not being refreshed on the client yet... [Skotlex]
+ * Fixed pc_disguise not allowing you to "redisguise". [Skotlex]
+ * Corrected a crash when sd is null in npc_event [Skotlex]
+ * After testing to make sure it works properly, I'm including
+ new battle conf options to limit MVP drops. [Reddozen]
+ * Removed OPTION_XMAS, it seems to not exist.... [Skotlex]
+ * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO)
+ since it has a visual effect to use. [Skotlex]
+ * Corrected the value of OPTION_FLYING [Skotlex]
+ * Using SG_FUSION ends Soul Linked effect. [Skotlex]
+ * status_setviewdata will set your option accordingly when the previous/new
+ view-class is wedding or xmas suit. [Skotlex]
+ * Added function map_foreachinshootrange, behaves the same way as
+ map_foreachinrange, but it also performs a "shoot-path" check before
+ invoking the function. Used in the skill subtimer function if
+ skill_wall_check is defined. [Skotlex]
+ * Fixed AL_WARP displaying "Unknown Area" selections when you don't have
+ all memo points used up. [Skotlex]
+ * Fixed alive_count not being reset on skill unitsetting, which leads to
+ some groups not being cleared once all their units expire. [Skotlex]
+ * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved
+ to skill_counter additional effect so it may trigger even on miss. [Skotlex]
+ * SKA no longer blocks skills. [Skotlex]
+ * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance]
diff --git a/src/map/intif.c b/src/map/intif.c index 8cd66e364..fff356d5c 100644 --- a/src/map/intif.c +++ b/src/map/intif.c @@ -1366,8 +1366,8 @@ int intif_parse_DeletePetOk(int fd) int intif_parse_RenamePetOk(int fd)
{
+ struct map_session_data *sd = NULL;
RFIFOHEAD(fd);
- struct map_session_data *sd;
if((sd=map_id2sd(RFIFOL(fd,2)))==NULL ||
sd->status.char_id != RFIFOL(fd,6))
return 0;
diff --git a/src/map/npc.c b/src/map/npc.c index c5264974b..4af7bc36f 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -1954,7 +1954,8 @@ static int npc_parse_script (char *w1,char *w2,char *w3,char *w4,char *first_lin }
if((dnd = npc_name2id(nd->exname))){
- ShowInfo("npc_parse_script: Overriding NPC '%s::%s' to '%s::%d'.. (Duplicated System Name - Lazy scripters >_>) \n",nd->name,nd->exname,nd->name,npc_script);
+ if(battle_config.etc_log)
+ ShowInfo("npc_parse_script: Overriding NPC '%s::%s' to '%s::%d'.. (Duplicated System Name - Lazy scripters >_>) \n",nd->name,nd->exname,nd->name,npc_script);
sprintf(nd->exname, "%d", npc_script);
}
|