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/04/29 * Added @noask command: enable/disable deals/invites autorejecting. [LuzZza] * Removed unreferenced local variable in pc.c [Lance] * Reverted npc_checknear to exclude check for class_ -1. * Removed npc_checknear in npc_buysellsel, npc_selllist and npc_buylist as enough preventive measures of hacking are already implemented. [Lance] * Updated STEAL skill (WIP), added a battle config option: [Lupus] 'skill_steal_max_tries' to set max number of stealing tries. It could help to fix stealing exploit on mobs with few drops * Added support for packet 0x229 (clif_changeoption). [Skotlex] * Bumped up PACKETVER to 7 to enable use of packets 0x229 and 0x22c [Skotlex] * Added missing next/prev initialization in chat-creation. [Skotlex] * Added missing sql-files/mob_db.sql... somehow it was missing from the mob_db update. [Skotlex] * Clones can't be class-changed now [Skotlex] * Readded the class == -1 distance check in npc_checknear [Skotlex] * Replaced check sd->trade_partner for sd->state.trading in clif.c [Skotlex] * Using malloc for memory allocations that doesn't need to be pre-initialized. * Eliminated initializations for pointers returned by calloc. * Moved grfio_final to do_init since it's not used after server boot. * Optimized scripts to return CONSTSTR instead of allocating memory just to return a constant string. Some buildin functions still need work. * Disabled graph since it doesn't work yet. [Lance] 2006/04/28 * Modified the mob_db structure. The mvp related columns were moved to before the drops, amount of drops increased from 10 to 15. [Skotlex] * Updated sql-files/mob_db.sql (and mob_db2.sql) to latest. [Skotlex] * Modified HP conversion so that it fails when you don't have enough Hp. [Skotlex] * Cleaned up Strip skills so that the skill animation will only show when something was stripped. [Skotlex] * Added constant MAX_MOB_DROP to specify the amount of normal drops a mob has. The mob_db reading code will automatically parse the file according to the number of drops expected (the Mexp/Mper and MVP item rewards must still be after the normal drops). Set to 10 currently. [Skotlex] * Mobinfo's drop list will use jName rather than Name for drop names. [Skotlex] * Some cleaning of the ASC_BREAKER code in skill_attack [Skotlex] * Modified skill_attack so that all skills with amotion get their damage delayed (should fix mob walk-teleport issues) [Skotlex] * Added function stristr to strlib.c, used by mob.c and item_db.c for case-insensitive seeks. [Skotlex] * Removed the sending of the online guild list when you log-on, may fix the "getting stuck" problem. [Skotlex] * Added battle config default_skill_delay. Specifies the default skill delay for most skills, it is also applied as a walkdelay (total skill walkdelay is default_skill_delay + that skill's can't walk delay) [Skotlex] 2006/04/27 * skill_castend_id and skill_castend_pos will trigger unit_stop_walking with flag 1 (fix pos) rather than none. Should fix some skills making you appear moving while doing them. [Skotlex] * Modified clif_skill_nodamage to allow for a NULL source. This is to simplify code related to AL_HEAL/MG_RECOVERY effects where someone shows a healing value, but there's no "caster" in sight (Pitcher skills, Blood Drain, Kaahi) [Skotlex] * Updated Kaahi to use clif_skill_nodamage to display amount healed. [Skotlex] * Added unlocking ud.target on mob_unlocktarget, fixes mobs chasing you around while cloaked. [Skotlex] * Changed the default rate of clone mob skills to 5% modified by mob_skill_rate setting. [Skotlex] * Applied some changes in unit.c to make mobs pick chase paths as they should. [Skotlex] * unit_remove_map will reset attackable-time, canact and canwalk delays. [Skotlex] * Added a timer in clif.c so that walk requests that are done while your cannot move duration will be delayed and processed afterwards (as long as the walk delay remaining is less than 2000 ms) [Skotlex] * Some changes in the slave skill conditions. All their skills are triggered at a 10% chance now. [Skotlex] * Changed in the behaviour of wedding skills, they should be getting all the land-skill checks now. [Skotlex] * Small change in @commands, may fix the null-pointer error. [Skotlex] * Changebase script command will also refresh the weapon sprites (in case you changed into Wedding/Xmas class) [Skotlex] * Small change in the pet_ai that should stop the "strange" catch-up behaviour of pets when you are much faster than them. [Skotlex] * Corrected the unequip script of the wedding dress/tuxedo (it should be Class, not bClass), item_db.sql was also corrected. [Skotlex] * Small change in the pet_ai that should stop the "strange" catch-up behaviour of pets when you are much faster than them. [Skotlex] * Now when you do @baselevel to reduce your level and you don't have enough stat points to deduct, you will get a stat-reset and THEN your stat points will be reduced. [Skotlex] * Added at command @commands, displays the list of commands available to you. Defaults to level 1. [Skotlex] * Added the missing clif_* calls to make changebase's view-class change update on the client. [Skotlex] * Added battle config hide_woe_damage which hides damage on woe maps packet-wise (battle/client.conf). [Skotlex] * Fixed base-level up @ command giving stat points instead of taking them away when leveling down. [Skotlex * Some small change in pc_heal which would let you have negative SP if you were killed on the same pc_heal invocation. [Skotlex] * Added 3rd argument to script command 'setmapflag' thx to Jbain [Lupus] setmapflag "prontera.gat",mf_pvp; setmapflag "prontera.gat",mf_jexp,100; Now you can dinamically increase/decrease EXP rate on set maps e.g. you can lower EXP on the cmd_fild02 ^_- 2006/04/26 * Updated sql-files/item_db.sql to current. [Skotlex] * Item use interval is set to a default of 100ms now since that should be low enough to not bother real players and it should cap somehow bot/macro spams. [Skotlex] * Updated Full Buster so that the can't act delay carries on to the weapon attack delay and can't use item intervals. [Skotlex] * Added script command getbattleflag to retrieve the current value of a battle_config switch. [Skotlex] * When Taekwons level up they get Bless and Agi Up level 10 instead of the S.Novice bonuses. [Skotlex] * Increased number of hits for TK kicks. 3 hits for TK_COUNTER and TK_TURNKICK, 2 hits for TK_STORMKICK and TK_DOWNKICK (until further information arrives) [Skotlex] * Modified how changebase script command works, the change caused by it is permanent (at least until logout). Updated the Tuxedo and Wedding dress to use onequip/onunequip scripts to change the look. [Skotlex] * Changed the skill_wall_check to use shoot-path seeking. May fix skill_wall_check setting. [Skotlex] * Fixed typo in skill.c: skill_clear_group [Lance] 2006/04/25 * Added battle config traps_setting to determine how traps should behave. With &1 traps are invisible if you didn't see them get set up. With &2 traps will be removed after changing maps. The default is 2. (battle/skill.conf) [Skotlex] * Cleaned up a bit the implementation of SC_MAXIMIZEPOWER, SC_CHASEWALK and SC_CLOAKING to prevent infinite looping timers. [Skotlex] * Fixed NPC_SUICIDE dropping items. [Skotlex] * Moved the mapflag skill restrictions from skill_checkcondition to skillnotok, this makes auto-spells not work in maps where they aren't allowed. [Skotlex] * Added TK_HIGHJUMP to skillnotok, the skill is blocked in noteleport maps (with the exception of gvg ones) [Skotlex] * Modified and simplified the random item group format. It now is ,,, where Rate normally is 1, greater numbers is the equivalent of adding the line multiple times. Also has support for import lines. [Skotlex] * Added constants to identify all item groups to db/const.txt [Skotlex] * Cleaned up and updated item_db to use these new constants (warning: item_db.sql needs to be updated! Sql-db users should not update until this file is updated) [Skotlex] 2006/04/24 * Simplified npc_gettimerevent_tick so that it should return a tick value even after the last ontimer label has been reached. [Skotlex] * All GMs will be sent to the char server through packet 0x2aff now. (previously hidden gms were not sent to the char-server as online) [Skotlex] * Made mob_searchname compare versus sprite, name and jname now. [Skotlex] * Added script command escape_sql. It will return an escaped string for use in the sql_query script command (in case you want to use input of players in your queries). [Skotlex] * Removed the skill packet from TK_RUN as the client ignores the walkok packet sent right after it. It displays just fine on the client now. [Skotlex] * Added DNS Blocklist support. Set in login_athena.conf. I'll make it more customizable tomorrow, I coded it pretty bad. [Zido] * Corrected mob_spawn_delay/boss_spawn_delay/plant_spawn_delay settings (they were named rate rather than delay in monster.conf) [Skotlex] * Cleaned up @grind2, @monsterbig, @monstersmall. [Skotlex] * Modified override_mobs_names to work only on the mob spawn files instead of everywhere (so now script-summoned mobs should keep their custom names intact) [Skotlex] * Added logging of deleted characters when the char_log is enabled. [Skotlex] * Fixed skill_delayfix not altering delay at all after you reached 150. [Skotlex] * Applied ers to pet loot drops and cleaned up the pet loot drop function. [Skotlex] * Mob skill state MSS_ANY won't include MSS_DEAD now. [Skotlex] * Added mob skill state MSS_ANYTARGET ("anytarget") which means any state (except dead) on which the mob has a target set. [Skotlex] 2006/04/23 * Added new column to mob_db Sprite_Name to hold the mob's sprite name. Columns Name and JName now hold the mob's english and kro names respectively. [Skotlex] - Currently both Name and Jname have the KRO names, so someone will have to update the Name column with the english Mob Names. * Updated mob_db.sql and mob_db2.sql to latest. [Skotlex] * Added battle_config option override_mob_names to make the spawned mob use the mob_db names instead of the specified names in the spawn files. Defaults to 0, 1 is to use Name column while 2 is to use the JName column (see battle/monster.conf) [Skotlex] * Idle skills won't trigger while the mob is walking (that is for the state "walk") [Skotlex] * Idle skills will now trigger each IDLE_SKILL_INTERVAL iterations (10 currently) [Skotlex] * Added support for walk packet 0x22c, will be used when PACKETVER is set to 7 or above (packetver is still set to 6 for now) [Skotlex] * Normal walking will now also trigger mob skills (due to the walk skill condition) [Skotlex] * additional experience multiplicator as mapflags which is based off battle.conf so with battle.conf rates 200 and "mapflag 200" it will be 4x on this specific map and 2x anywhere else [Jbain] 2006/04/22 * Angelus was giving more bonus than it should. Fixed. [Zido] * Added Option constants for Carts, fixed OPTION_FLYING (it conflicts with OPTION_XMAS?) [Skotlex] * Updated clif.c to check for OPTION_WEDDING|OPTION_XMAS instead of view class to block attacks and skill usage. [Skotlex] * Cleaned up change-cart code. [Skotlex] * Modified SC_XMAS to not change your view anymore and only set the proper option value (OPTION_XMAS) [Skotlex] * Cleaned up the code regarding char_gm reading. [Skotlex] * Changed the option field to unsigned short to make room for the higher values. [Skotlex] 2006/04/21 * SC_CLOAKING's val4 now holds whether cloaking ends or not on attack. [Skotlex] * Implemented NPC_INVISIBLE, it starts SC_CLOAKING with val4 set to 1. [Skotlex] * Updated the HP/SP leech structures to have race-data attached to them. [Skotlex] * Merged all leeching code to new battle_drain function. [Skotlex] * Simplified a bit the code for Signum Crucis [Skotlex] * Added script bonuses: [Skotlex] bonus3 bHPDrainRateRace,,,; bonus3 bSPDrainRateRace,,,; bonus2 bHPDrainValueRace,,; bonus2 bSPDrainValueRace,,; * Fixed items not really getting unequipped when they should. [Skotlex] 2006/04/20 * Fixed the equip/unequip scripts not triggering for compounded cards. [Skotlex] * Char server will now ignore packet 0x65 for already authentified accounts. [Skotlex] * Added two columns to item_db: equip_script and unequip_script are scripts that are executed once when the corresponding item is equipped or unequipped respectively. [Skotlex] * Removed bonuses bDamageWhenUnequip, bLoseSPWhenUnequip as they are no longer needed. [Skotlex] * Updated sql-files/item_db.sql with latest. [Skotlex] * Fixed buffer overflow in clif_MainChatMessage. It now prints a Debug message with the offending line. [Skotlex] * Cleaned up a bunch of GS/NJ skills [Skotlex] * Fixed Gatling Fever crashing server when used by non players. [Skotlex] * Added support for n to specify minutes to @charban. [Skotlex] * Added state.trading to specify when a trading has started. Now you should be able to walk around until the trade is either rejected or started. [Skotlex] * Armor defense is no longer reduced by the amount of characters targetting you. [Skotlex] 2006/04/19 * Updated the doc/script_commands.txt documentation in regards to npc mob spawn lines. [Skotlex] * Added back the "you can't walk delay while attacking" to unit_attack_timer, now when you want to walk during your attack animation, you will only stop attacking, you will have to click again to move. [Skotlex] * Fixed a pair of wrong mapflag lines in nopvp.txt [Skotlex] * Removed the max cap of autoloot so you are now allowed to set autoloot values above 100. [Skotlex] * Initialized w1/w2/w3/w4 before reading each npc line to avoid sending unread values to the parsers (for example, if w4 has a value in one line and none on the next, it will be parsed with the previous value of w4 on the following lines), this could cause serious problems with mapflags and the recent "off" addition. [Skotlex] * Updated getpartymember to receive an int which specifies what to retrieve. 0: Character names (array $@partymembername$), 1 character char ids (array $@partymembercid), 2 character account ids (array $@partynameaid). By default it returns party member names. [Skotlex] * Updated script_commands.txt with the updated behaviour of getpartymember. [Skotlex] 2006/04/18 * Fixed a typo in map_search_freecell which was returning incorrect cells according to the ranges given. [Skotlex] * A tiny fix to @kami [Zido] * The IRC Bot can now autojoin when kicked, set in irc_athena. [Zido] * Added @who to the IRC Bot, outputs all online characters. [Zido] * Changed the memory manager fatal errors when allocating memory to print out the size request as well as the file and line where they originated. [Skotlex] * Fixed the delete_timer (@summons, alchemist plants) not invoking unit_free, hence causing memory leaks and the like. [Skotlex] * Applied jA's patch to fix a bug in the scripting engine in regards to priority of operators. Thanks to End of Exam for the information. [Skotlex] * Removed message 592 from trade.c [Skotlex] * Added support for disabling mapflags on a mapflag line: [Skotlex] comodo.gat mapflag nomemo <- turns on nomemo mapflag comodo.gat mapflag nomemo off <- turns off nomemo mapflag * Removed mapflag nopvp due to the above change. [Skotlex] * Cleaned up and optimized the restricted/zones mapflag. Restricted cards will just not work in disallowed maps rather than blocking the compounded equipement from being used. [Skotlex] * Converted the format of the battle conf files to windows format [Playtester] * Shinomori's method (kinda) of remote script execution with interaction. [Lance] 2006/04/17 * skill_clear_unitgroup is now invoked in unit_remove_map only on death if the applicable battle setting is set. [Skotlex] * Changed setting clear_unit_ondeath to a type 4 (bl-based) which defaults to BL_ALL. [Skotlex] * Fixed Absorb spirit sphere not working on mobs, thanks to Vividd. [Skotlex] * Cleared the ud->target on pc_stop_attack to prevent attack resuming an other such oddities. [Skotlex] * I seem to have broken @kami with my last commit, fixed. [Zido] * Added @users to the IRC Bot, outputs the # of users online. [Zido] * The baby check when wearing a tuxedo/dress now works [Zido] * Fixed pet being incorrectly removed when it had intimacy 0. [Skotlex] * Some cleanup in the TK_RUN related code. [Skotlex] * Added variable walk_count to unit_data to be use as a counter for cells walked for walk-triggered skills, on-chase skill triggers are now done every 5 cells (it is the closest value that makes the average mob trigger a chase skill every second). [Skotlex] * mob_skill_db needs updating since it's current use rates for chase-skills assume the trigger is every 100ms rather than every second. * Fixed TK_RUN having a cast-bar when attempting to stop-running and generating timer_delete errors when halting as well. [Skotlex] * Clearing the dummy npc after fooling the client. [Lance] * Updated DLLS. Please DO NOT update the libs from now on (except if mySQL has newer builds which are not compatible with client DLL). [Lance] 2006/04/16 * Fixed the first call to the walk timers having the tick interval halved, which made all walking timers be off by half cell with the actual position displayed client-side (so everyone reaches destination cell server-side half-cell before the client). [Skotlex] * Fixed being halted when you are walking so that: 1. Your position refreshed on the screen is correct (the current tile if you haven't reached at least half path between the current and next tile and the next tile otherwise) and 2. If you are halted before walking even one cell, you will be moved to the next cell (to effectively prevent stun-locking). [Skotlex] * Modified @monster command to use map_search_freecell (prevents mobs spawning on non-walkable tiles) [Skotlex] * Modified @nuke to invoke skill_cast_nodamage_id instead of the damage_id version (fixes sprite and splash damage for the skill) [Skotlex] * Fixed char-sql server still reading the old lanconfig format rather than the new one. [Skotlex] * Removed water_height.txt reading (since it is always done from the rsw now) [Skotlex] * Fixed a possible crash in grfio_find_file [Skotlex] * Corrected water-level-reading to account for a return of null from the previously mentioned function [Skotlex] * Fixed mysql ping setting being in minutes rather than hours. [Skotlex] * Removed npc_event_sub from npc.h and moved it to npc.c [Skotlex] * Cleaned up #warp to prevent spitting non-walkable tile warnings. [Skotlex] * Changed the meaning of msg_athena 2, it is now "invalid target cell, randomizing". [Skotlex] * Fixed wrong check of Deluge + Suiton which broke the water-requirement check for skills. [Skotlex] * Cleared ud->target on remove-map, it should fix the phantom mob sprite issue. [Skotlex] * Temperory fixed compiler warnings/errors. Please compile before commiting. [Lance] * Added pcre3.dll, zlib1.dll and libmysql.dll. DO NOT DELETE THEM. (Required by systems without these DLLs preinstalled) [Lance] * Experimental npc_event_doall_sub with queue and npc_id allocation when needed. [Lance] * Added warnings to npc_scriptcont for easier debugging. [Lance] * Missing lines in npc_parse_script! [Lance] * Sending fake npc for inputs and menus for NPC without map coordinates. [Lance] 2006/04/15 * Fixed upgrade_svn5902.sql, thanks to Koshiro for pointing it out. [Skotlex] * Updated skill_attack to allow characters not on a map to attack (enables traps and the like to work when they aren't cleared on the character's death) [Skotlex] * Removed use of packet 0x1c9 for skill_unit display, except for Graffiti (which is the only unit which requires the much larger packet) [Skotlex] * clif_getareachar_skillunit will send the unit_id of UNT_ATTACK_SKILLS for traps (this is to prevent them from displaying on the client) [Skotlex] * Updated libs, Updated vc project files, And deleted uneeded DLLs. Credits to ALZ. [Zido] 2006/04/14 * Updated sql-files/mob_db.sql to current. [Skotlex] * Fixed being able to do all the stuff you shouldn't be able to during the petrifying state. [Skotlex] 2006/04/13 * Updated sql-files/item_db.sql to current. [Skotlex] * Added an Info message when pinging the SQL servers. [Skotlex] * Fixed crash when looking for SC_MIRACLE in battle_calc_weapon_attack [Skotlex] * Some more standard C code cleanups. [Skotlex] * atcommand_param and charcommand_stats to make them standard C (so it may compile with the Borland C). Also cleaned atcommand_param against overflows. [Skotlex] 2006/04/12 * Removed the noteleport mapflags from two juperos maps [MasterOfMuppets] - added the nopenalty mapflag to hugel.gat * Halved the aftercast delay of auto-casted spells. [Skotlex] * Allowed auto-spells to retrigger themselves. [Skotlex] * Changed slave chasing from using unit_walktobl to map_search_freecell + unit_walktoxy, since the previous behaviour makes all slaves always end up on the same cell. [Skotlex] * Removed area of effect of Assumptio. [Skotlex] * Added "can't act" delay update when an auto-spell triggers. [Skotlex] * Expanded the warp warning so that it also warns when a warps takes you to a non-walkable tile. [Skotlex] * Simplified the mob-drops structure by using a single timer with a linked list of drops instead of separate timers for each drop. [Skotlex] 2006/04/11 * Added special_state changebase to identify when a character has a special-view associated with some equipment to correctly revert the look when you take off said equipment (fixes tuxedo/wedding dress when you use modify_wedding_display: yes) [Skotlex] * Removed the piece of code that "guesses" that job classes between 24 and 68 are advanced classes from mob_avail reading since they conflict with NJ/GS. Use the correct class numbers from now on! [Skotlex] * Cleaned up implementation of BlastMine and Claymore Trap. [Skotlex] * Added Freezing trap information to battle_calc_weapon attack. [Skotlex] * Merged the can't walk delay code into the weapon-damage delay one, means less timers for attacks, as well as fixing the ghost-mob issue that reappeared recently. [Skotlex] * Traps will not be displayed when you walk within their range. [Skotlex] * Added HT_DETECTING revealing traps. [Skotlex] * Added ers handling for skill_timerskill structures. [Skotlex] * You don't get critical'ed when in counter-attack stance anymore. [Skotlex] * Changed the default counter-type to "always critical". [Skotlex] * Implemented use of ers for skill_unit_groups to reduce memory usage. * Note that it's NOT TESTED yet. Use with caution, at least some obvious bugs are expected to be found... [Skotlex] * Modified battle_check_range to do a path-check on distances less than 2 (rather than 3) to avoid being able to hit through walls. [Skotlex] * Modified unit_walktoxy_sub to always move at least one cell when a large chaserange is specified to prevent possible infinite loops where attack_timer says you are not within range, but unit_walktoxy says you are. [Skotlex] * Fixed Looted items always dropping in quantities of one. [Skotlex] * Removed the check that deletes Magnus Exorcism cells after they hit once. [Skotlex] 2006/04/10 * Temperory replaced strtoll to strtoul until the function changes. [Lance] * Multiple optimizations to the unit_data auto-chase upgrade, also simplified the mob and pet ai routines. [Skotlex] * Simplified the walk routines to half the number of timers required for walking. [Skotlex] * Finished fixing the unit_data auto-chase update. Still need to do some optimizations... but the current code-base should be usable. [Skotlex] * Fixes to the unit_data update that lets characters auto-chase while attacking. It seems to work mostly now, but there's still a few issues to be resolved with ranged-attackers. [Skotlex] * Modified the unit_data structure to handle automatically switching between chasing and attacking a character. Note that it's a work in progress and not yet properly tested/finished... [Skotlex] - DON'T USE THIS YET. There's much testing that needs be done, but I had to commit now so I may continue work on it later.... * Updated the subnet support to not require specifying the subnet mask, it is auto-acquired from the char/map IP and the subnet-mask. [Skotlex] * skill_wall_check defaults to yes now. [Skotlex] 2006/04/09 * Added the missing last_thinktime initialization to pets. [Skotlex] * Reverted the change in skill_wall_check to let skills go over pits. [Skotlex] * Changed use of strtol to strtoll when reading the equip_jobs as strtol's result is just a signed int, fixes reading of equippable jobs for certain items. [Skotlex] * Corrected Knives being usable by Gunslinger. SQL users use upgrade_svn5972.sql to ugprade that. [Skotlex] * Modified @warp/@rura to prevent causing pc_setpos position error messages. [Skotlex] * Fixed the mob's last_thinktime not being updated on mob_spawn, causing them to not "think". [Skotlex] * Fixed @npcmove not sending the correct packets to make the moving refresh client-side. [Skotlex] * Fixed mobs with aggressive + looter mode never looting. [Skotlex] * skill_wall_check now also checks for pits so that skill effects don't go through them. [Skotlex] * Now you can't leave/be-kicked from a guild inside guild castles. [Skotlex] * Fixed map_waterheight prefixing extra "data\" [Lance] * Mob_ai update. The attacked checks will trigger even if the mob can't move. Being attacked while the mob can't move no longer will trigger rude-attacked skills. [Skotlex] * Changed the default of multi_hit_delay from 230 to 80 which seems more official. [Skotlex] * Wedding recall skills are now blocked by the nomemo mapflag instead of nowarpto. [Skotlex] * Skill delay for weapon types is now based on adelay (ASPD) rather than amotion (ASPD/2) [Skotlex] * Removed ending Endure when casting Berserk, may fix the timer mismatch issues. [Skotlex 2006/04/08 * Fixed skill_nocast_db reading so that when the same skill is specified multiple times, the blocked effects add up instead of replacing each other. [Skotlex] * Fixed @movenpc [Skotlex] * Cleaned up and improved the lootsearch routine to pick nearest item. [Skotlex] * Fixed trying to set the view_data for npcs who are located on a map, but have no visual data. [Skotlex] * Added irc_athena.conf :) from now on, set your irc configuration in conf/irc_athena.conf [Zido] * Removed the baby class check when using "changebase" to change to the Wedding Sprite, since it fixes the bug that the sprite doesn't show at all, and baby classes arn't messed up by it anymore. (or so it seems) [Zido] * Fixed up irc.c, no more crashes :D [Zido] 2006/04/07 * Likely fixed a mob not returning to their original class view on respawn after they changed class in their previous life. [Skotlex] * The map-server can now read the equip_job column of the item_db as both decimal and hexadecimal values. [Skotlex] * Updated item_db.sql current item_db.txt [Skotlex] * Added upgrade_svn5951.sql for those who would like to convert their existing items. (it converts the equip_jobs fields to the new values used) - See db/Changelog for further info regarding the equip_job fields change. [Skotlex] 2006/04/07 * Moved the Fusion HP penalty to battle_calc_weapon_attack [Skotlex] * Some cleaning to use battle_heal/damage rather than pc_heal/damage where appropiate. [Skotlex] * Cleaned up the deadly-poison hp reduction code. [Skotlex] * IRC User access levels now refresh on a mode set and join/part. [Zido] * Added missing creation/destruction of the expcache_ers in guild.c [Skotlex] * Unified status_remove_buffs/status_remove_debuffs into a single function. [Skotlex] * Fixed pc_setpos ignoring the clrtype sent to it. [Skotlex] * unit_free will now use clear type 3 for players (warping out effect) [Skotlex] * You can't invite someone to a guild now within Guild Castles. [Skotlex] 2006/04/06 * Hopefully fixed the wedding item-trade restriction. [Skotlex] * Fixed status_clear_buffs making SC_BERSERK's end send you to 100hp. [Skotlex] * Rewrote the guild exp cache code to prevent overflows and to use the entry reusage system. [Skotlex] * The IRC Bot is now able to check each users access level prefix in the channel (~/&/@/%/+), the IRC command @kami now requires the user to be at least channel operator(@). Now I need to make it store the users access level on every nick/mode change. [Zido] * Changed the default of skill_add_range to 0, said value now disables skill-range checking when casting ends. [Skotlex] * Corrected the Soul Drain formula, thanks to Haplo for pointing it out. [Skotlex] * Addded missing aldeg_cas01 to NOWARP mapflags, thanks to Justin84 [Lupus] - And we set lhz_dun03 nowarpto mapflag by default till check it on eRO/kRO * Changed the random warping of mobs with no players from mob_spawn to unit_warp, which prevents MSC_SPAWN skills from being retriggered for already spawned mobs. [Skotlex] * Modified @allstats to prevent negative/overflow issues. [Skotlex] 2006/04/05 * Fixed undisguising not clearing the mob sprite for the disguised character. [Skotlex] * Fixed parsing of job_db1.txt due to the MAX_WEAPON_TYPE change. [Skotlex] * TK ranking kicks can't be used on sucession now (can't use any of the kick skills twice in a row without using a different one first). [Skotlex] * Modified the ammo checks so that ammo is consumed at the end of battle_calc_weapon_attack (should fix element being lost on final arrow). [Skotlex] * Added a define list for weapon types in pc.h [Skotlex] * Cleaned up pc_checkallowskill and moved the Gatling fever check to it. [Skotlex] * Some cleanup of clif_parseloadendack, fixed guild-member list being sent on all map-changes. [Skotlex] * Removed the hardcoded removal of characters who spawn in a castle. All castle maps got the flag nosave now. [Skotlex] * Added support for the 2006/04/04a Sakexe packet version. [Zephiris] 2006/04/04 * Added inter config connection_ping_interval which specifies interval in hours at which mysql_ping's must be done on all connection handles to keep the mysql connection alive. Defaults to 0 (disabled) [Skotlex] * Made the login sql handle on the char-sql server be used only when gm_read_method 1 is enabled. [Skotlex] * Small fixes to npc_enable, added BL_NPC handling on status_get_sc. [Skotlex] - Some changes to close-confine, status start will fail when the source is not found or it doesn't has sc-data. [Skotlex] - pc_setoption no longer changes the character's class when mounting/dismounting, it only changes the view-class. [Skotlex] * Modified the char-txt server to modify the class of mounted characters to their non-mounted version. Added an upgrade_svn5902 file to handle the class update on the sql tables. [Skotlex] 2006/04/03 * Fixed pc_setpos using unit_remove_map with type 0 instead of 3, which confuses clients and makes them think the character in question is still standing on the spot where it was removed. This should fix the warp-portal issue. [Skotlex] * Fixed script command mapwarp. [Skotlex] * Fixed Auto-counter. [Skotlex] * Modified Rude-Attacked behaviour so that such skills only triggers when the rude-attacked count is greater than 3. [Skotlex] * Added config setting slaves_inherit_mode to determine whether slaves take on their master's aggressive/passive status (defaults to yes) [Skotlex] * Disabled NPCs are now handled through nd->sc.option&OPTION_INVISIBLE checks. Should fix disable/enablenpc calls not working. [Skotlex] * Moved skill_counter_additional_effect calls to trigger right after skill_additional_effect (which means they trigger at the end of the attack motion for physical attacks instead of at the beginning of the attack animation) [Skotlex] * Cleaned up (fixed?) a possible overflow in pc_isUseitem, thanks to foobar. [Skotlex] * When you have the wrong ammo-type equipped the skill-failed message is now "skill can't be used with this weapon", which is less misleading than "please equip arrows first". [Skotlex] * Corrected pet-equipment display (I originally assumed they went in the shield view-position, when they actually go in the head-bottom position). [Skotlex] 2006/04/02 * Fixed npc_gettimerevent_tick returning the difference since the last triggered label instead of total elapsed time for the npc-timer. [Skotlex] * Added a missing memset on ers_alloc'ing mob loot which was making data from looted items fill in normal drop info (in other words, you could get normal loots that were named after players, for example) [Skotlex] * Added preventing sending packet clif_clearchar_id when the character in question is invisible. [Skotlex] * Added packet 0x7c in clif_spawn which was supposed to be used for non-players (this fixes pets/mobs/npcs spawning as if they just teleported into view) [Skotlex] * Some cleanups to clif.c, removed some excess/broken packets/functions. [Skotlex] * Merged Larry's fix of using a timer to get rid of the glow-issue when you login to night-enabled map. [Skotlex] * Changed arrows View ID to 22 since daggers were already View ID 1. The server was looking for daggers to be in your arrow slot. [Reddozen] * Loading waterheight aliases from resnametable.txt. [Lance] * Workround the warnings for clif.c (what to do? the original codes are ugly.. passing values as pointers omgwtfbbq). [Lance] 2006/04/01 * Added a exp-even-share check when someone leaves a party. [Skotlex] * Added function clif_changetraplook to handle changing the appearance of traps as they are triggered. Fixes all the nullpos related to trap usage. [Skotlex] * Fixed berserk not raising your HP to your new cap. [Skotlex] * Fixed ground-skills not displaying damage done. [Skotlex] * Fixed a few functions sending a negative ID for disguised characters (such as clif_specialeffect) which very likely produced client crashes. [Skotlex] * A small cleanup on npc-whispering which could fix a reported crash on it. [Skotlex] * Removed the gm-whispering of the charnameack hack notice since it isn't perfected yet. It is still reported on the console for debugging purposes. [Skotlex] * Fixes to the mob_ai routines. Prevent casting rude-attacked skills in situations that shouldn't be considered as so. Fixed mobs failing to chase after enemies when attacked from out of their view_range. [Skotlex] * Should not exit when you can't find an NPC file.. [Lance] * Dynamic shops support with script callback. (needs testing) [Lance] * Cleaned up and fixed @where command. [Skotlex] * Fixed standing up no really making you stand up. [Skotlex] * Added upgrade_svn5834.sql to update view for item type 10. Because of the ammo upgrade, all arrows need their view set to 1. This query does that to all type 10 items (this includes all ninja weapons as well, but a proper item_db.sql update is pending until the rest of throwables are updated) [Skotlex] * Fixed compiler warnings. [Lance] * Added structure view_data to handle sprite information for all characters (equipment, weapons, hair, dyes, etc). [Skotlex] * Rewrote several clif functions to adapt to the new view_data class. [Skotlex] * Rewrote the way cloth dye packets are resent to optimize bandwidth usage. [Skotlex] * Fixed the npc_item_flag thing (enable_items/disable_items script command) [Skotlex] * Rewrote the disguise implementation to be bandwidth friendly. [Skotlex] * Modified the hide options to change your class to INVISIBLE_CLASS, since such classes don't even get their view packets sent around. [Skotlex] * Added class 139 to npcdb_checkid which was required by some npcs in the swordman quest. [Skotlex] * April fool! Improved soundeffectall script command. (No, this is not a lie) [Lance] 2006/03/31 * Fixed skill_require_db loading of the new ammo columns. * Added a column to specify the amount of ammo required for skills that require it. [Skotlex] * Added support for ArrowType requirement on skills. It checks for having an item equipped on the arrow-slot who's view has to match with the required arrow-type (works the same way it does for weapons). [Skotlex] * Skills will automatically be ranged and arrow-types when they have a arrow-requirement in battle_calc_weapon_attack [Skotlex] * Skills will automatically consume arrows if used with a bow and the skill is an attack weapon-based skill even if the skill_require_db doesn't specifies arrow requirements (this is for stuff like backstab used with bows) [Skotlex] * Fixed an infinite recursion in the Wedding Recall skills. [Skotlex] * UNT_ATTACK_SKILLS unit packets won't be sent to the client as they are supposed to be invisible anyway. [Skotlex] * Started work on commands for the IRC Bot, At the moment you can use !eakami to broadcast a message, edit ALLOWED_NICK in irc.c to change the nickname of the person that is allowed to use it (Shitty authentication method, I know, but i'll make user/pass method soon enough.) [Zido] * Modified a bit the skill packets of Sharp-Shooting and Brandish Spear in hopes of fixing it. [Skotlex] * Should fix a bug in GM stealth mode (@hide). [Lance] 2006/03/30 * Updated char name option. [Vicious] * Added a missing return that fixes crashes on status_change_timer when source is not found. [Skotlex] * Added year day return in gettime function. gettime(8) returns 1~366 [Foruken] * the auth function in login.c won't jstrescapecpy passwords that were encrypted. Thanks to foobar. (but are still more cases to check for? Dunno, the code is kinda long...) [Skotlex] * Endure level 11 and above are now considered infinite-endure, and invoked when Berserk is active. [Skotlex] * Set the minimum pet hungry delay to 10 [Skotlex] * modified functions skill_delayfix and skill_castfix to reduce number of arguments. Added function skill_castfix_sc for mobs (who only get status change cast reductions, not dex based ones). Also, skill_delayfix will never return a value below min_skill_delay_limit. [Skotlex] * Modified brandish spear so you won't see the skill-animation for every targetted mob. [Skotlex] * Added the Steel Body icon to auto-berserk. [Skotlex] * Now you can't cast auto-counter while the previous one is active. [Skotlex] * Added Veider's suggestion to do a hack-report when players request the name of an invisible/cloaked character. [Skotlex] * Added execution of OnInterIfInit, OnCharIfInit and OnInterIfInitOnce on script reload. [Lance] * Cleaned up mistakes in irc.c [Lance] 2006/03/29 * Now none of the pet-menu options will have any effect when the pet's intimacy is 0. [Skotlex] * Applied a fix to not do range checks on npc_doevent when the npc is not on a map. [Skotlex] * You can't return to egg a pet that has run away now. [Skotlex] * Added ers support to the delayed mob drops. [Skotlex] * Some cleaning of the mob_ai. Mobs should stop chasing once you are beyond their min_chase range. Improved rude-attacked checking when mobs can't move. [Skotlex] * range3 is now used as min-chase value of mobs. [Skotlex] * Added a debug message when status_change_timer fails. Report it next time it shows up. [Skotlex] * Fixed tick direct modifications increasing duration instead of decreasing it. [Skotlex] * You can't SG_FEEL maps already memorized. [Skotlex] 2006/03/28 * Fixed the Family recall warp skills. [Skotlex] * Fixed pc_percentheal giving life when the rates are negative. [Skotlex] * Fixed resetting stats losing the +52 bonus on high classes. [Skotlex] * Fixed Wedding support skills healing yourself instead of partner. [Skotlex] * Added a check to prevent knocking back the Emperium at all costs. [Skotlex] * Fixed summon mobs being able to cast "summon" skills. [Skotlex] * Summoned mobs will inherit the size and ai properties of the master. [Skotlex] * Added a debug function to locate all "looping warps". [Skotlex] - Now will someone help cleanup those warps? * Some cleanup of the skill-use functions in clif.c [Skotlex] * Fixed Gunslinger and Ninja skills not showing up and not working due to an error in skill_require_db - also commited a commented block for GS_FLING that needs to be looked at and posiably cleaned before it's uncommented. - fixed exp2 not accepting Gunslingers and ninjas - fixed the "jobmaster" having the same problem as rebirth - added the Gunslinger shops for guns and ammo [Reddozen] * Modified clif_getareachar_pc to hide hidden GMs from normal players (players with GM level > 0 still able to view) by NOT sending the coordinates. [Lance] 2006/03/27 * Removed the limits.h file which just breaks compilation on *nix systems [Skotlex] * Updated some DB work from jA [Vicious] * HW_GANBANTEIN now also removes traps. [Skotlex] * PF_DOUBLECASTING takes effect amotion time after the initial cast instead of amotion*div [Skotlex] * SG_KNOWLEDGE now lasts time1 after you quit a map before it clears out (defaults to 10 mins currently) [Skotlex] * Modified Intravision to modify the status-change packet to specify SI_INTRAVISION instead of cloaking/hiding/chasewalk. I believe this is how intravision actually works. [Skotlex] * Pet catching now uses the menuskill variables to prevent item usage from disrupting the catch process. [Skotlex] * Added Safetywall to the list not blocked by Dispell. [Skotlex] * Added some include limits.h required by window compiles. [Skotlex] * Corrected Wedding rings being trade-able. [Skotlex] 2006/03/26 * GCC on Cygwin still complaining, resorted to including limits.h in malloc.h [Lance] * Refixed the fix with a constant list for Win32 users - limits.h (imported from MSVC) [Lance] * Fixed a problem in chrif.c where USHRT_MAX was undefined. [Codemaster] * Added jAthena's new start and athena-start shell scripts. [Lance] * Changed status_point/skill_point to unsigned short. Adjusted the code as necessary to prevent overflows. [Skotlex] * itemdb_exists and itemdb_searchname should now ignore dummy_item matches. [Skotlex] * Fixed jstrescapecpy crashing when you pass a null string to parse. [Skotlex] 2006/03/25 * Fixed the map-server freeze/crash on Warp Portal. [Skotlex] * Fixed Grandcross/Granddarkness showing no skill animation. [Skotlex] * Fixed mob-casted grandcross doing nothing unless the target was "self" [Skotlex] 2006/03/24 * Fixed / finished most of Gunslinger [Reddozen] - fixed some bullets in the item DB - adjusted a few rates in skill_cast_db.txt for Gunslingers - adjusted a couple skills in skill_db.txt to act correctly - adjusted all the SP values for Gunslinger skills - changed piercing shot to lv 5 from lv 10 - made ki Translation fail giving coins to Gunslingers - equipping a weapon other than a gatlin gun should cancel SC_GATLINGING. Also made Gatlinfeaver on/off togelable - GS_CRACKER will no longer stun players - added GS_Disarm * Fixed iteminfo only displaying first result when there were many. [Skotlex] * Fixed pet hatching. [Skotlex] * Small change that SHOULD fix the pet duplication issue. [Skotlex] * Fixed Warp Portal. [Skotlex] * Modified script commands atcommand/charcommand to execute even if there isn't a player attached. They'll use a dummy player data with the same position/name as the script's owner (usually an npc). Be careful when using this as the result of some @/# commands may be unexpected! [Skotlex] * Some cleaning around the return to egg code. Pets should stop duplicating now. [Skotlex] * Some cleaning of the egg hatching routine to prevent spawning the pet if the egg can't be found in the inventory. [Skotlex] * Removed a pair of autoadded "data/" strings on grfio.c to see if that helps with the data_dir map loading. [Skotlex] * Fixed skillidx not being set whenever a mob uses a skill. This explains skills like metamorphosis/summon_slaves not working at all. [Skotlex] * Fixed unit_skillcastcancel reading the nocastcancel flags the exact wrong way around [blackhole89] * Added function map_search_freecell to locate an available cell around an area (for recall/warping skills). UNTESTED. [Skotlex] * Added unit.c to the VC8 project files. Thanks to Joshuaali [Skotlex] * Fixed Magnum-break/GrandCross displaying multiple times the skill effect (once per target) [Skotlex] 2006/03/23 * Fixed a crash in unit_useskill_pos2 [Skotlex] * Updated mob_db.sql and item_db.sql to current txt versions. [Skotlex] * Fixed Devotion not properly being cleared on death/near death in some cases. [Skotlex] * Fixed Shield-Reflect not being correctly ended when devotion does. [Skotlex] * Fixed DEX-based casting time and delay reduction. [blackhole89] * Modified the function pc_percent_heal to prevent overflow problems. [Skotlex] * Changed the second entry in the water_height.txt listing to specify directly the .rsw file (instead of .gat). [Skotlex] * Fixed Potion Pitcher sometimes crashing the server. [Skotlex] * Fixed a compile warning by adjusting the acid demonstration formula. [Skotlex] * Added flag 2 to the skill_castnodex_db file for skills that shouldn't be affected by delay/cast reducing skills/effects. [Skotlex] * Added SantaPoring's water_height.txt modifications. [Lance] * Minor cleanups. [Lance] 2006/03/22 * Fixed function pc_isCardAllowedOn causing searches for non-existant item id 0. [Skotlex] * Fixed Arrow Shower. [Skotlex] * Merged the unit_data structure from jA for handling unit-related data (attack times, walking, auto-attack timers, skill related data). This is a huge change that affects walking, attacking, auto-attacking, skill usage and character clean up from maps. I spent the last two days clearing out bugs, and even though I couldn't find any more, I wouldn't be surprised for a corner-case or two I missed. [Skotlex] * Modified unit_skillcastcancel to receive flag&2, which stands for "cancel casting only if current skill is cancellable" [Skotlex] * Battle config options changed from yes/no to BL_TYPE settings: skillrange_by_distance, skill_noreiteration, skill_nofootset, gvg_traps_target_all, skill_log, attack_direction_change, auto_counter_type. See (Note 4) in the relevant battle config files. [Skotlex] * Clif.c will disconnect sessions that send an unknown command packet above 0x30000 instead of just ignoring it. [Skotlex] * Cleaned up error reporting during mob-skill loading to be less spamy with non-loaded mobs. [Skotlex] * Corrected water_height reading. It works now, with the exception that cloned maps don't get their water-level read because they don't have a rsw file. The solution is to add all cloned maps to water_level.txt (ie: "new_1-1.gat new_zone01.rsw" makes the new_zone01.rsw stored water-level be applied to map new_1-1.gat). Anyone can help collect all the clone maps to fill up water_height? * status_check_skilluse won't block skill-specific checks (silence, berserk, steel-body, etc) when the skill in use is an item-invoked skill. [Skotlex] * Merged LittleWolf's function to read the map-height directly from the rsw file. Now when building the map-cache, the water-heights should be automatically read as well directly from the rsw's. [Skotlex] WARNING: Not tested yet! The water-height config file now is for aliases. When the rsw for a certain map is not found, and this map exists in the water_height list, then the water height of the second map listed in that file is used. * Some cleanups in irc.c [Skotlex] * Magic skills that ignore element now also don't take into account elemental cards. [Skotlex] * Fixed compiler warnings in battle.c [Lance] * Changes by [reddozen] --> - Updated Full Buster's damage, status effects, and skill levels - Bullseye now only uses 1 coin - changed Adjustment's required SP - changed Incerase Accuracy's effect bonuses - changed Magical Bullet's SP cost - changed Piercing Shot's damage and SP - changed Desperado's range, hit count, aftercast delay, and SP - fixed Absorb Spirit Sphere being able to remove coins - changed Acid Demonstration's damage to the new Japanese formula 2006/03/21 * Fixed duel in pk-mode (same party/same guild/alliance non-targeting issue). Thanks to Hobbit for pointing that out. [LuzZza] * Fix on not showing guildmembers logins/logouts messages. [LuzZza] * Fixed SC_SWOO's opt3 value. Small monsters should stay small for skill's duration now. [Skotlex] * Fixed allowing multiple recast of Dissonance/Ugly-Dance [Skotlex] * Fixed those annoying irc.c compile warnings. [Skotlex] 2006/03/20 * Added monster_ai&16 setting for executing the hard ai on ALL mobs in maps with players instead of just mobs in the vecinity of players. [Skotlex] * Cleaned up some guild functions. [LuzZza] - Now guild leaving/explusion packets sends correctly. - Fix to prevent creation alliance/opposition with same guilds. 2006/03/19 * @stfu now allows negative intervals to be specified. [Skotlex] * Added overflow check to the login-server when sending GM accounts to char. [Skotlex] * Small fix to prevent killer/killable states from allowing you to target yourself. [Skotlex] * Added Explosion Spirits to list of effects that dispel on logout. [Skotlex] * Fixed handling of guild skills by pc_blockskill_start, moved it to skill.c [Skotlex] * Fixed autoguard icon showing with stun. [Skotlex] * Fixed acid demonstration breaking shield instead of armor. [Skotlex] * Fixed Slim Pitcher crashing server ocassionally. [Skotlex] * Hopefully fixed Ankle Snare lasting the whole trap's duration [Skotlex] * Added sc_start(SC_ENDURE) on infinite endure bonus. [Skotlex] * Fixed Berserk Pitcher consuming required items twice. [Skotlex] 2006/03/18 * Fixed BA_DISSONANCE and DC_UGLYDANCE not working. status_check_skilluse was blocking them due to the lack of an exception like BA_MUSICALSTRIKE has it. [blackhole89] * Documentation update on NPC whisper and rid2name. [Lance] * Fixed event_kill_pc to behave like what it should instead of another replication of event_death. Added script function rid2name to convert bl ids to name. [Lance] * Recoded setmobdata script function. Fixed mob_damage typo sd -> mvp_sd. [Lance] * Added 'GetMonsterInfo(MobID,Idx)' script function. [Lupus] You can get monsters name,level,race, etc by its Id. Check npc\sample\getmonsterinfo.txt * Fixed warnings on compilers again. [Lance] 2006/03/17 * Fixed the mob_skill_db by commenting out lines with targeted skills being cast during an idle state. (Thanks to LittleWolf) [Zephiris] * Removed a block of code from skill_check_condition that actually belongs to status_check_skilluse. Should fix silence/stun blocking skills regardless of settings. [Skotlex] * Fixed misleading and inaccurately documented events and added a missing flag. [Lance] * Fixed npc_cleanup_dbsub not removing key and caused pointer being freed problem. [Lance] * Fixed handling of the char_gm_read config for packet 0x2af7 (reloadgmdb) [Skotlex] * Added battle_config debuff_on_logout which removes Asura's SP regen delay and Strip-Equip effects on logout when set to yes (default, conf/battle/skill.conf). [Skotlex] * removed auto-attaching of player-run scripts in initnpctimer. You must use attachnpctimer instead! [Skotlex] * Final fix on Juperos NPC. [Lance] * Fix on initnpctimer not attaching rid. [Lance] * Fix on OnTouch ignoring -1 NPCs. [Lance] * Fix on @reloadscript crashing due to passing non BL_SKILL bl to a function that accepts only BL_SKILL bl. [Lance] * Added area NPC detection in clif_parseLoadEndAck. [Lance] * Fixed compiler warning in script.c get_mob_data. [Lance] * Temperory resolved issues on Juperos until I get the exact description on the behaviour in retail servers. [Lance] 2006/03/16 * Changed NJ_ZENYNAGE according to this weeks patch to deal a random [MasterOfMuppets] ammount of damage depending on the skill lvl. * @kill_monster/@kill_monster2 won't touch Guardians/Emperium now. [Skotlex] * Small change in the random item reading function, may fix @itemdbreload messing up random item searches. [Skotlex] * Restricted GS_BULLSEYE to only be used on demi-human or brute monster targets [MasterOfMuppets] 2006/03/15 * mob_chat_sub fix. Added buildin_pcblockmove. [Lance] * BL_PC and BL_MOB control script commands (experimental) [Lance] * Made an adjustment to addspiritball() to allow Gunslingers to summon up to 10 spheres [reddozen] * Fixed Tarot Card of Fate using time instead of time2 which is the one that actually holds the effect duration. [Skotlex] * Fixed mob random walk interval being set to up to 6K seconds in some instances. [Skotlex] * Added mapflag nodrop (prevents droping items to the ground). [Skotlex] * Fixed mapflag notrade doing nothing. [Skotlex] * Likely fixed Gravitation not hitting except for the last hit. [Skotlex] * Removed the hardcoded duration of 30 seconds for sleep. [Skotlex] * Fixed rangecheck for pet skill usage of INF_SELF_SKILL type of skills [Skotlex] * Removed inall/exall from atcommand.conf since those two do not exist! (pointed out by Ancyker) [Skotlex] * @me now uses entry 270 in msg_athena as output format. [Skotlex] * gm_skill_unconditional setting now also overrides skill_partner_check setting. [Skotlex] * Emulated strtok_r functions to work strictly with ANSI compilers. [Lance] * Added battle config options item_rate_adddrop, item_drop_add_min and item_drop_add_max to control drop rate of card-acquired loot bonuses. (conf/battle/drops.conf) [Skotlex] * Added item_db2.sql and mob_db2.sql, thanks to Joshuaali [Skotlex] * Added more usage of msg_athena on the slave atcommands messages. [Skotlex] * Fixed twilight pharmacy dropping 1 item to the ground instead of the qty produced. Thanks to k3dt [Skotlex] * Fixed Plagiarism not working unless you had some sc active. [Skotlex] 2006/03/14 * Fixed a possible crash in Venom Splasher if the countdown is too high. [Skotlex] * Fixed skill_notok blocking guild skills [Skotlex] * Fixed Napalm vulcan's time2 entry in the skill_cast_db [Skotlex] * Fixed the average_lv column size specification for levels above 255. Thanks to Joshuaali (upgrade_svn5607.sql) [Skotlex] * Updated @rura/@warp. Now you can use both "@warp mapname x y" and "@warp mapname,x,y". [LuzZza] * Added at-command @tonpc (warp to NPC). [LuzZza] * Fixed @where at-command. [LuzZza] * Fixed WZ_WATERBALL + HW_MAGICPOWER [Skotlex] * Fixed incorrect range check in autospell-when-hit triggers. [Skotlex] * Modified Wedding recall skills to behave as in official [Skotlex] * Modified Arrow Shower to be a ground-based skill and work as it should on officials. However, the unit_id is still unknown. [Skotlex] * Fixed skill_additional_effect triggering every time you were being hit even if no damage was returned. [Skotlex] * Fixed battle_calc_damage_return to make magic damage be returned by 100%, and received damage nullified. [Skotlex] * Changed a bit status_check_skilluse to check for dead characters, should fix all the weird attack/attacked while dead bugs. [Skotlex] * Fixed player auto-attack not cancelling when dead. [Skotlex] 2006/03/13 * Finished some checks to make sure Land Protector Only blocks BF_MAGIC skills. Hammerfall is no longer blocked. [Skotlex] * Fixed script command warpparty looking for an attached player even when it is not needed. [Skotlex] * Shield Reflect is now passed through Devotion as well. [Skotlex] - Devoted characters lose the devotion effect when the Crusader is at less than 25% Hp. [Skotlex] * chrif_scdata_save will not send a save scdata request when the char has been already tagged as in the final save. [Skotlex] * Some status_change_start cleanups, stuff like blessing should now remove stone/curse even if the status does not begins because the character is already blessed. [Skotlex] * Cleaned SC_SUITON a bit to get rid of that compile warning. [Skotlex] * Added function battle_calc_gvg_damage for gvg related damage reductions. Fixes Gravitation being reduced as well as Pressure overriding max-castles restriction. [Skotlex] * Corrected char-server parameters so that the subnet config file is the third parameter, not the second (which was conflicting with inter_athena.conf's argument), thanks to foobar. [Skotlex] * PR_BENEDICTIO now ignores mdef [Skotlex] * Fixed chatlog's x/y column capacity in sql-files/logs.sql [Skotlex] 2006/03/12 * Updated clone skill copy to consider combo-skills. [Skotlex] * no_spawn_on_player won't work on mobs with no respawn delays now. [Skotlex] 2006/03/10 * Cleaned up the Skillbreaker implementation, HP gaining happens at level 5 now. [Skotlex] * Autospells won't trigger now on maps where said skills are forbidden. [Skotlex] * Changed div (multi-hit) behaviour. Skills with div above zero will get their total damage increased by the number of hits, div less than zero is just for "show", total number of hits displayed is abs(div), but damage isn't increased by number of hits. [Skotlex] * Adjusted several skill damage equations to make up for the above change. [Skotlex] * Fixed a overflow bug when one of the item_random* files has too many random items. [Skotlex] * Fixed a variable loopback problem on NPC shop price checking routine. [Lance] * Fixed a memory overwrite crash on pc_readdb, thanks to foobar for the fix. [Skotlex] * Fixed only the first TK stance triggering when you have multiple of them active. [Skotlex] * Default of skill_attack_enable changed to yes. [Skotlex] 2006/03/09 * Fixed the dancer/bard soul-linked skills toggling on/off with each call to pc_calc_status. [Skotlex] * Fixed a bug in the pc_skillreset function which allowed TK rankers to accumulate skill points. [Skotlex] * Fixed a major memory leak in status.c causing the last column of job_db1.txt never being read. I have no idea how long this has been there, but signs point to us using Katars at a random ASPD from somewhere in memory for ages. [blackhole89] * Fixed a critical bug in job_db1.txt reading in status_readdb. [blackhole89] * Fixed pc_damage_sp not properly substracting SP. [Skotlex] * Made Magic Crasher a BF_WEAPON attack. [Skotlex] * Made skill_unit_range a per-level setting. meteor and Lov now have their unit range for bosses adjusted in the skill_unit_db rather than hardcoded. [Skotlex] * Added Gunslinger/Ninja Status Change icons. Somebody needs to look into them though for not all SCs have a matching SI. [blackhole89] * Changed ITEM_NAME_LENGTH to 50. [Skotlex] * Fixed stun's duration not getting reduced by vit + luk/3 [Skotlex] * Fixed #itemlist not taking into consideration crafted/forged items and pet eggs. [Skotlex] 2006/03/08 * More work on ninja/gs. Which made me do... [Vicious] - Add more weapon type(17~21 for guns) [Vicious] - Included MAX_WEAPON_TYPE in status.h and updated the codes (Whose idea was it to do static number... esp dual weapon) [Vicious] * Fixed a bug that was making the no_spawn_on_player setting useless. [Skotlex] * Added Deadly Poison and Bleeding to status_get_sc_def, meaning that now vit does increases defense against being inflicted from it. [Skotlex] * Fixed and tested @whodrops [Skotlex] * Updates to Gunslinger skills' DB entries. [blackhole89] * Rewrote pc_jobchange to be sane by using the map internal codes instead of a mesh of complicated nested comparisons. [Skotlex] * pc_authok will now change you to a novice if your class isn't identified as a valid one. BACK UP before updating, because.. well, just in case you start seeing novices filling up your city. [Skotlex] * Mobs will now chase you even if you hit them from outside their range of view. [Skotlex] * Fixed item disappearing from the floor when you attempted to pick it up and there was no room in your inventory. [Skotlex] * About half-ish nj/gs skills are semi/fully-done. No effect/status yet though. [Vicious] * Added atcommand @whodrops which lists mobs with the top drop-rates for a given item. List of stored mobs and their dropchances is also defined by MAX_SEARCH on map.h [Skotlex] * Modified atcommands @mobinfo and @iteminfo to display multiple matches instead of just one. Max number of matches to display is set in map.h (MAX_SEARCH) which is currently 5. [Skotlex] 2006/03/07 * Base for ninja/gunslinger is mostly done. need to work on skills now. [Vicious] - Updated sql-files/ mob_db.sql and item_db.sql to current txt dbs. [Skotlex] * @job ninja/gunslinger. No skill tree or anything yet. [Vicious] * Gospel won't start taking effect until after 10 secs have passed since invocation. [Skotlex] * Now if a skill has inf set to 4 (self skill) and inf2 512 (cannot target self) this skill becomes a target-auto-select skill, which targets your current attack target, and won't stop your current attack. The current attack is delayed by your aspd (except for a few skills such as the monk combo skills which readjust this delay). All Monk combo skills plus Taekwon kick skills have been updated to use this. [Skotlex] * Added a check that forces self skills (inf = 4) to select yourself as target to prevent oddities from crafted packets. [Skotlex] * More ground work for Ninja/Gunslinger [Vicious] * status_calc_pc now assumes that if your max hp is negative, it has overflowed, and as such, it is set to the max_hp setting instead of 1. This 'dangerous' assumptio is alright as long as there aren't equipment that can send your hp to negative values. [Skotlex] - Fixed the soul linker skill tree. (Thanks to muad_dib) [Zephiris] * Added Gunslinger and Ninja into @job. of course, you need latest EXE for make this work... and of course no skills yet! [Vicious] * Storm Gust now knocks back on a random direction instead of away from the storm. [Skotlex] 2006/03/06 * Some fixes due to the guild-skill changing location (being moved from 500->900 within the code) [Skotlex] * Fixed npc_event doing a map-check when the npc is not on any map. [Skotlex] * Fixed a debug message showing up on skill castend nodamage id when using a guild skill. [Skotlex] * Fixed #save not working on maps not in the current map server. [Skotlex] * Added battle config clear_skills_on_death to decide whether all ground-based skills should be removed when you die. Defaults to yes. [Skotlex] 2006/03/05 * Removed my EXP limit as it did not do what it was supposed to [Codemaster] * Fixed remove-trap [Skotlex] * Fixed animation of Redemptio [Skotlex] * Some reorganization of how the skill check functions behave (skill_get_*). Guild skills have been moved to the range 900~915 (instead of 500~519 in the code). [Skotlex] * Set the default for display_delay_skill_fail to 'no' as it should have been for a while (the kRO patch about that was last year, long time ago) [DracoRPG] * Fixed easter.txt typo. [Lance] * Extended summon command to enable custom timeouts. [Lance] 2006/03/04 * Fixed a bug in the subnet checking function, login-TXT server. Also changed the messages to be a bit more informative. [Skotlex] 2006/03/03 * Added function battle_set_walkdelay in charge of updating walkdelays of characters based on two criterias: when the delay is induced by damage, if the current walk delay isn't over yet, do not update it. If the delay is instead caused by a skill, then the current walk delay cannot be decreased, only increased. [Skotlex] * Added upgrade_svn5455.sql, it converts the manner and karma columns to signed. Apply this if your tables have the field as unsigned (which would explain mute always disappearing after relogging) [Skotlex] * status_change_start now checks on a 0->10000 scale, should fix sc-cards with very low rates never triggering (eg: some coma-inducing cards). [Skotlex] * Cleaned up the active guild skills. They should be usable now by non-players as well. [Skotlex] * Fixed crash on the NPC whisper system when the message's size was 1. [Skotlex] * Strip status changes are now removed on logout. [Skotlex] * Added a column in skill_cast_db for specifying can't walk delays. It's all set to 0 currently, so someone get updating them! [Skotlex] * Removed the apply walk-delay entry from skill_cast_nodex as the new walk delay column handles this now. [Skotlex] * Fixed autoloot dropping the item to the ground even when it was autolooted. [Skotlex] * Fixed character deletion working on SQL without an email address (Thanks to Valaris) [Zephiris] * Added event 8 for mobspawns that should spawn with special ai set. This means that now in the mob_spawn files if you use 8 as the last entry, the mob will use the special ai, and as such, it will only attack other mobs, not players (can obviously be combined with 2 for small mobs and 4 for large mobs, eg: 10 for a small mob with special ai set) [Skotlex] * Modifed battle_check_target so that mobs with special ai will only target by default mobs without said state (this will prevent normal clones from fighting among themselves, for example) [Skotlex] * Trick dead now ends on logout [Skotlex] * Added mapflag nocommand which blocks @/# commands unless your gm level is above gm_skill_unconditional's level. [Skotlex] * Fixed weapon scripts not being executed unless the weapon was forged. [Skotlex] * gm_skill_unconditional is now a no/gm-level setting instead of yes/no [Skotlex] 2006/03/02 * Slaves inherit speed will now only work if the master can move. [Skotlex] * Some cleanup and reorganization on the way pet-skill variables are handled. [Skotlex] * Fixed a typo that disabled all pet support skills from triggering (except ground-based ones) [Skotlex] * status_check_skilluse cleanup. Some status will only block skills when they are first used, not on cast-end (which includes auto-spells and ground-skill checks). Now when status_castcancel is 'no', skills WILL come off after the cast bar is done. [Skotlex] * Gravitation now only affects the caster, should have also fixed the skill not doing damage when skill_caster_check is set. [Skotlex] * Max fame list size is now defined by MAX_FAME_LIST constant (mmo.h) [Skotlex] * Individual fame lists sizes can now be specified through the char-server (check the fame list configs in char_athena.conf) [Skotlex] * Some cleanup on mob_can_reach code to prevent unnecessary path-searching [Skotlex] * Optimized the path-searching ai for mobs to try target cells around the target in order rather than randomly picked cells. [Skotlex] * Applied Snufkin's patch to fix compilation on FreeBSD. [Skotlex] * Fixed mobs targetting themselves after using a support skill. [Skotlex] * Gospel no longer blocks item usage of whoever is in the area of effect, only the caster of Gospel can't use healing items now. [Skotlex] * Added the long/near attack_def_rate card effects to battle_calc_magic (horn card and the like will now work with spells) [Skotlex] - Elemental fields should vanish on map-change now. [Skotlex] - Land Protector only blocks magical ground skills now. [Skotlex] * Fixed item pickup not picking anything unless you were in a party with item distribution set [Skotlex] 2006/03/01 * Made it so players that are at the max level do not receive EXP. This makes it so a player at the max level (ie - 99) cannot join a party and feed all of his or her EXP to the other party members [Codemaster] * Mapregsql will now fully depend on mmysql_handle. [Lance] * Optimized strcharinfo to use switch. [Lance] * Some cleanup of the mob skill reading. Added error reporting for unknown states/conditions, error reporting now specifies the file and line number. [Skotlex] * Silence will only block skills when they have begun casting, not when the cast bar is done. This also means that auto-spells will likely come-out even when silenced. [Skotlex] * opt1 status will block skills when they are done casting only if the sc_castcancel option is set. [Skotlex] * strcharinfo now returns blank instead of crashing the map server when there's no player attached. [Skotlex] * Added a missing mysql_init call to the mapreg sql handle. [Skotlex] * Checked and fixed the script engine barking when you try to have a label with the same name as a const.txt defined parameter. [Skotlex] * Turn Undead and Offensive Resurrection should now work on undead players. [Skotlex] * Fixed the range checking of Repair weapon [Skotlex] * Rude attacked is now also triggered when you hit a target that can't move out of their melee attack range. [Skotlex] * Mob ai will attempt to do a long-range attacked condition skill before unlocking a target when it is attacked and said target is out of melee range of a non-walking mob. [Skotlex] * Corrected mobskill event to set the target_id before triggering. This should fix shortrange/longrange attacked mob skill conditions. [Skotlex] * Moved MSC_SKILLUSED trigger to mobskill_event which is triggered in battle_calc_damage. It is also triggered on skill_castend_nodamage_id. [Skotlex] * Added party_share_loot for handling party-share loot. it should now work with autoloot as well. [Skotlex] * Fixed skill_break_rate breaking stuff even if the rate is 0. [Skotlex] * pc_stopwalking will not send a fixpos packet if you are sitting. [Skotlex] * mob_can_reach rude-attacked condition now uses the mob's field of view. [Skotlex] * SC_NOCHAT is automatically started on pc_authok if manner is negative. [Skotlex] * Map server now refuses to start if you try to define a label with the same name as some const.txt defined character parameter. [Skotlex] * Corrected a few Compiling Warnings [Codemaster] * Added the ability to select GM loading via Login (default) or Char [Codemaster] * Added script command 'setbattleflag'. [Lance] 2006/02/28 * Rewrote LAN support code. Changed configuration file name lan_support.conf to subnet_athena.conf, changed it syntax. [LuzZza] * Added script command 'equip' to equip items. [Lance] * Fixed dependancies in map-server compiling (VC7.1). [Lance] * Added autoequip flag check for pc_takeitem. If it impacts on perfomance, please remove it. [Lance] 2006/02/24 * Prevented guild/party recall to work on GMs of greater level than yourself. [Skotlex] * Prevent muting players with higher GM level than yourself. [Skotlex] * Fixed Lady Tanee's spawns. [Skotlex] 2006/02/23 * Fixed the CL_WHITE define, thanks to FlavioJS [Skotlex] * NPC break equipment stuff now has a 1.5% per skilllv success rate. - This is a custom value as 20%-lv10 seems too high and 10%-lv10 seems too low. [Skotlex] * pc_setpos won't random warp players if placed on top of Moonlight Petals [Skotlex] * Removed the check in clif.c for npc_shopid as the client never sends a packet when the trade is cancelled... [Skotlex] * Player-summoned mobs won't level up now. [Skotlex] * Fixed Super Novice explosion spirits triggering no matter what you said on the third line. It now triggers on the fourth line.... [Skotlex] * Fixed GTB blocking targetted spells when gtb_pvp_only was set. [Skotlex] * Merged the code of Ankle snare and Spider web. It no longer moves target if sc failed. [Skotlex] * Players should stop walking as soon as they start vending or get into a chat. [Skotlex] * Added mob skill conditions myhpinrate and friendhpinrate. [Skotlex] * Added monster_ai condition 16 (enable `friend` targetted skills to heal oneself) [Skotlex] * Fixed the shop id not clearing when buying/selling (which made you get stuck afterwards). [Skotlex] * Modified the way autospells stack to mimic official servers. Cards of the same ID cannot stack, but different cards with the same skill can each trigger indepedently of each other. [Skotlex] * Added battle_config autospell_stacking to enable stacking of cards of same ID. (see battle/item.conf) [Skotlex] * Moved card-specific battle options to items.conf [Skotlex] * Autospells triggered when hit will check the range to the target. [Skotlex] * Some cleaning up of status_calc_pc [Skotlex] * In status_change_start capped the passed success chance to 100% [Skotlex] 2006/02/22 * Windwalk's flee bonus is now +1 every 2 skill lvs. [Skotlex] * Changed the way equipment breaking works. Function pc_break_equip was removed and now skill_break_equip is used. Basicly, it's the same as before, except that when you 'break' a piece of equipment of a non-player, the corresponding strip(weapon/armor/shield/helm) status effect is induced (duration: strip skill lv 1) [Skotlex] * Cleaned up the Dev folder. [Skotlex] - Take note of the file todo-for-stable, which holds all modifications in trunk that have not yet made it into stable. Be sure to update the file as needed. * Updated the path searching code with jA's current implementation. [Skotlex] - There is a slight chance the CELL_NOSTACK mod broke, someone test that. 2006/02/21 * Fixed the range-check of targetted skills (was evaluating the range as 0 always) [Skotlex] * Now you should receive the party/guild mini-dots on map-load without the need of waiting for others to "move" for you to receive the update (fixes dead characters never showing up on the map) [Skotlex] * Fix to prevent using main chat when it disabled in atcommand_athena. [LuzZza] - Fixed message codes in duel functions. - Small fix in log_refine, incorrect compare expression. * Some cleaning of the warp portal code so that when it is "pre-casted" it doesn't mess up with other casted skills. [Skotlex] * Some fixing on the weapon-refine code. [Skotlex] * Cleaned up some npc_event error reporting. [Skotlex] * Some cleanup of the castend routines to not clear the skill variables if for some reason the casted skill triggers another skill. [Skotlex] * Vending is now cancelled on a pc_setpos [Skotlex] * Pressure again ignores Basilica. [Skotlex] * Fixed attacker's sc being nulled when the target's sc is empty (fixes most status changes not taking effect during battle) [Skotlex] * Slaves now do a battle_check_target to check if the new target is an enemy when acquired through the master's skilltarget. [Skotlex] * Fixed SC_SKE halving de2 twice. [Skotlex] 2006/02/20 * The Super Novice Explosion Spirits skill will now trigger when the last sentence is said (not after the next sentence as it was currently) [Skotlex] * Now the default delay of amotion is applied only for BF_WEAPON, non NK_NO_DAMAGE skills (so stuff like Summon Spirit Sphere get the default skill delay rather than ASPD) [Skotlex] * Made the Char-SQL server send the GM listing when the map server connects. [Skotlex] * Play-dead and Basilica now block Gospel [Skotlex] * Map SQL server will no longer ignore the gm-list packets received from char. [Skotlex] * Login-SQL server will not free the current GM listing if the SQL reading of it failed (prevents GM lists being lost on SQL connection problems) [Skotlex] * Login-SQL will now read for the GM list ALL accounts with level above 0, not just those with level above min_gm_level (just like the TXT server does) [Skotlex] * SC_NOCHAT is not dispelled on death now. [Skotlex] * Cleaned up the global message function, Super Novice Explosion Spirits will not trigger on maps where said skill can't be used. [Skotlex] * Close confine won't get the bonus range on cast as other skills do due to exploits. [Skotlex] * Fixed a bug in setnpctimer. [Skotlex] * Menu-based skills now use their own variables separetly from the normal skill variables. This should enable them to work even when you keep doing other stuff between the menu invocation and selection. Also gives a better control over packet-based exploits. Affected skill/script-commands are: [Skotlex] - Arrow Crafting - Warp Portal / Teleport - Item producing - Identify - Repair weapon - Pet egg selection - Hindsight - Weapon refine. - Feel of the Stars, Moon and Stars. * Corrected the implementation of Gangster's Paradise to work as it should. [Skotlex] * Fixed Close-confine not properly ending on a knockback (that includes backsliding) [Skotlex] * Changed MAX_RANDITEM from 2000 to 10000 to fit new databases [Komurka] * Fixed Taekwon stances not triggering. [Skotlex] * Added atcommand @exp [Skotlex] * Added error reporting when add_timer_interval receives a negative/0 interval value. [Skotlex] * Fixed a possible infinite recursion bug with splash self skills. [Skotlex] * Modified the way firewall_hits_on_undead works, to loop and invoke multiple skill_attacks based on the value. Now it behaves a lot closer to how Aegis Firewall does (except a good default value for this config switch is missing) [Skotlex] * Preparing eA for new mob_skill_db from Aegis 10.2 [Komurka] - increased MAX_MOBSKILL 32 -> 40 2006/02/19 * Some fixes to the last item usage tick. Items should be working fine now. [Skotlex] * Fixed parsing of @kamic/@kamib to check for case. [Skotlex] * Now you can hide from Pressure. [Skotlex] * Weapon endowing will work on targets already endowed with the same element. [Skotlex] * Now reseff cards will take effect even if the status change is passed with &8 flag. In short, now reseff are ALWAYS applied to the status change defense. [Skotlex] * Removed a missing break that was making AM_TWILIGHT2/3 always fail. [Skotlex] 2006/02/18 * Removed the SP_ cases from status_get_sc_def as they were colliding with other status changes. [Skotlex] * Implemented SG_MIRACLE (Miracle of the Sun, Moon and Stars) [Komurka] - duration is stored in battle_config.sg_miracle_skill_duration (currently it's set to 10 minutes) - ratio is stored in battle_config.sg_miracle_skill_ratio (currently it's set to 0.01% chance per character move) - this skill enables you usage of all Warmth skills, Comfort skills, and also all mobs will be target of the Stars regardless of the day and map - you'll see message "[Miracle of the Sun, Moon and Stars]" when skill kicks in * Added upgrade file upgrade_svn5322.sql because apparently not everyone has the guild table with autoincremental guild_id defined. [Skotlex] - If you can't create guilds, chances are you need to apply this ugprade. * Fixed a missing break that was making Heal, Resurrection and some others become attack skills [Skotlex] * Some CELL_NOSTACK Mod updates: [Skotlex] - Made the free-cell lookup more extensive. - Allowed pc_setpos to place players on top of cells that are stacked - Fixed a logic bug in the mob-walk code that was making them get stuck and not move (triggered quite often when the cell no stack mod is enabled) 2006/02/17 * Cleaned up irc.c, may it compile now on Windows? [Skotlex] * Updated the VC project files by Joshuaali. [Skotlex] * Fixed possible crash on pet egg select. [Skotlex] * Massive update on the way splash/area (non-ground) skills work. [Skotlex] - the new column 'splash' in skill_db is now used to determine the area of effect of all related skills (eg: splash range of fireball, area of effect of angelus, the splash damage area of mines, etc) - nk definition update. &1 is no damage skills, &2 is for splash skills. A skill can be tagged 3 to indicate it is both. This is used to indicate the type of handling the skill should use, but it also helps as all splash skills get an extra check to prevent them from hitting 'unhittable' characters (ie: hidden) while all skills not tagged as non-damage can trigger auto-spells. - All self skills are automatically executed as no-damage skills and get re-routed as damage skills when the source and target do not coincide (this handles all combo skills) - Some skills may have screwed up (I fixed/moved all which I could find needed updating). As usual, report any issues. * Added an upgrade_svn file that should fix the party table by making the party_id auto-incremental. Apply this or new parties will always fail! [Skotlex] * Changed around the included files in irc.c to see if it compiles under Win32 native. [Skotlex] * Char-SQL server updates: [Skotlex] - Removed the unnecessary party/guild check on each char-save. - Removed the 'quick loaded char' messages. - Some code cleanup. - Fixed one or two memory leaks. * Applied the suggested fixes by Joshuaali to fix the compiling of the sql map server on Win32 systems. [Skotlex] - note that irc.c is still uncompilable, but the rest "should be fine" now. * Fixed the memory leak on opt_2str as pointed out by End of Exam [Skotlex] * Fixed a few char SQL memory leaks as pointed out by End of Exam [Skotlex] 2006/02/16 * Fixed a crash in AL_TELEPORT. [Skotlex] * Now you can't close-confine and already confined mob. [Skotlex] * mysql/my_global.h now includes winnt.h under Windows systems... [Skotlex] * Some code cleanup of status.c [Skotlex] * Removed the check that prevented mobs from walking into a basilica. [Skotlex] * Added a new column in the skill_db to specify the splash-range/area-of-effect of skills. (Work in progress) [Skotlex] * Autocasted AL_TELEPORT should now automatically pick menu entry rather than showing the box up. [Skotlex] * The battle config options sp_rate and hp_rate are now applied independently of the same type of bonuses from cards. [Skotlex] * In CELL_NOSTACK mode, mob_canreach will now ignore other players when checking if there's a path to the player. [Skotlex] * Added RG_RAID to the list of skills that need a status_checkskilluse on skill_attack. [Skotlex] * Added the mapflag check monster_noteleport to AL_TELEPORT. [Skotlex] * Fixed the sc_def rate not being reduced in status_change_start. [Skotlex] * Changed the include in irc.c from strings.h to string.h, which fixes a bunch of compilation warnings here... [Skotlex] * Updated the SQL login/char servers to let the mysql server grant the new IDs for accounts/chars/pets/parties/guilds instead of them being handled by the server. [Skotlex] * Some cleaning of the pc item use functions. [Skotlex] * Gospel shouldn't block enemies in certain situations from using items now. [Skotlex] 2006/02/15 * Fixed crash in chrif_load_scdata warning message. [Skotlex] * Fixed pets displaying "strangely" when they did not have their pet armor. [Skotlex] * Added battle config option pk_level_range for specifying valid level ranges to engage in PK (battle/misc.conf) [Skotlex] * Added battle config allow_es_magic_player to enable SL_S* skills to work on non-mobs. (battle/skill.conf) [Skotlex] * Fixed the char servers to store correctly exp as uints. They are also capped to LONG_MAX before being sent to the client. [Skotlex] * TK_DODGE now dodges all ranged attacks, when used with SPURT, dodges everything. [Skotlex] * The autospell loop now cancels after one successful cast. This means if you have 10 autospells with 100% casting rate, only one will come off with each hit instead of all of them. [Skotlex] * Warm skill update: [Skotlex] - they are type BF_WEAPON, so that they may trigger effect/spell cards. - Changed their element to -1 to carry on weapon's element. - Against player it only damages 60SP per "hit" - Against non-players it is a knockback skill as it was before. - Hit frequency increased to once every 100ms. * TK_DODGE now only dodges ranged weapon attacks, while under Spurt mode it dodges everything (provide better information if this is not how it should behave as the current info given is conflicting itself >.<) [Skotlex] * Cleaned up and expanded the sc_def_rate battle config. The new battle flags are mob_sc_def_rate, pc_sc_def_rate, mob_max_sc_def, pc_max_sc_def [Skotlex] * Modified Marionette Control so that the max bonus stats you get is capped to your server's defined max stats instead of 99. [Skotlex] * Mobs are no longer affected by the vs_traps_bctall switch. [Skotlex] * Added function pc_damage_sp to damage the SP of players, updated code as necessary. [Skotlex] * Fixed @lvup command adding levels instead of substracting when you specify a negative quantity. [Skotlex] 2006/02/14 * pc_setinventorydata won't use itemdb_search on empty inventory slots (id = 0) [Skotlex] * Fixed the icon from Provoke being gone. [Skotlex] * Fixed skill_timerskill (most notable skill broken: water ball doing 1 hit) [Skotlex] * Removed the declaration of puchar and pchar from my_global.h which was preventing compiles on native win NT systems. Drawback is now Win9X systems will fail to compile instead... [Skotlex] * Hiding cancels Close Confine now. [Skotlex] * ST_MOVE_ENABLE now also checks for pc_can_move(), and only perform a walk check if the skill is ground targetted. [Skotlex] * Moved the berserk_cancel_buffs code to status_change_start. [Skotlex] * Moved most checks of status_isimmune() to status_get_sc_def [Skotlex] * Allowed Endow skills to go through status_isinmune characters. [Skotlex] * Fixed PR_BENEDICTIO not taking away all SP. [Skotlex] * Modified the way Status changes are linked to skills for an easier to read implementation (see status_initChangeTables). [Skotlex] 2006/02/13 * Added battle config sc_def_rate which adjusts natural defense of characters against status changes (see conf/battle/battle.conf). [Skotlex] * Pet eggs will now not be deleted from the inventory until they arrive from the char-server. [Skotlex] * pc_readdb will now print if any classes are missing their exp tables. Only exception are JOB_WEDDING and JOB_XMAS. [Skotlex] * Made the NPC_BREAK* skills attack skills again, their chance of equipment breaking code was moved to skill_additional_effect. [Skotlex] * Now when the exp table does not has enough data to reach the max level specified, the max level will not be reduced to enable leveling through quests/scripts/gm-commands/etc. [Skotlex] * Made Land Protector Block Hammerfall. [Skotlex] * Updated item_db code to stop creating items for every non-existant ID used. Instead it will complain, and use a dummy item that has the view ID of an apple, and it's type 3 (etc item). [Skotlex] * Modified PA_GOSPEL so that the random damage attack becomes a BF_MISC attack. [Skotlex] * Added pc_resetskill when lowering job level and there's not enough skill points to substract. [Skotlex] * Fixed SG_FUSION costing SP to deactivate. [Skotlex] * Some cleaning up at pc_setpos to prevent calling pc_clean_skilltree [Skotlex] * Enabled use of TF_HIDING while Cloaked. [Skotlex] * pc_resetstate won't remove wedding skills now [Skotlex] * NPC_POWERUP now gives +40% atk per level. [Skotlex] * Water elementals can be frozen again. [Skotlex] * Fixed the sc_def equation in status_change_start. [Skotlex] * Fixed an extra semi-colon that broke win32 compiles. [Skotlex] * Some rewriting of bounds checks in @baselvup, @joblvup and the # equivalents to prevent signed/unsigned comparisons. [Skotlex] * Now slaves give exp/loot (exception: player slaves still stick to the old rules of no exp/loot) [Skotlex] 2006/02/12 * Some path cleanups meant to get the CELL_NOSTACK mod working better with path searching and the like. [Skotlex] * Optimized functions skill_addtimerskill/skill_cleartimerskill [Skotlex] * Fixed SC_DANCING for non players (was making dances only last 1 second for them) [Skotlex] * Modified map_moveblock to handle updating dance's position as well as ending close confine status effects. [Skotlex] 2006/02/10 * Fixed Sonic Blow's damage for lvl 1~9 [Vicious] * The status window will now show the total power of both weapons instead of just the right-hand weapon for dual wielders. [Skotlex] * Removed #include from irc.c, since it's unused and some people don't have it. [Valaris] * Changed the default MAX_LEVEL supported by the map server to 1000. [Skotlex] * Pet Lures won't be consumed now when used on a non-mob. [Skotlex] * Fixed map_searchrandcell function. [Skotlex] * Modified the NPC_BREAK* skills to break equipment at a 10%*lv rate. [Skotlex] * Modified the drop item routines to perform stacking checks only for player attempted item drops, therefore, mob drops will stack up to infinity. [Skotlex] * NPC_POWERUP now gives +20% attack per skill level. [Skotlex] 2006/02/09 * Fixed "set baselevel, X" sending one to a different level than the one requested. [Skotlex] * Added range checking to mob skill loading of permillage and delay to prevent overflows. [Skotlex] * Fixed pc_gainexp not working for next level exp requirements above INT_MAX. [Skotlex] * Fixed the display of @showexp not working right for exp values above INT_MAX. [Skotlex] * Removed the conf sql code for now. Maybe will continue later with that project. Lowered the irc keepalive timer, and added some checks for use_irc that should have been there. Added a return line \n to the beginning of the title screen. [Valaris] * Added function mob_respawn which makes a mob respawn on spot 3 seconds after defeat if SC_KAIZEL is active. [Skotlex] * Modified NPC_REBIRTH to use Kaizel level 1. [Skotlex] * Added setting max_exp_gain_rate which caps how much exp you can get from a single kill. See battle/exp.txt for details. [Skotlex] * pc_readdb will now cap experience required per level to UINT_MAX, it will warn if the exp table has exp values above said limit. [Skotlex] * Changed the default of skill_delay_attack_enable to no. [Skotlex] * Code rewrites in mob_damage and party_exp_even_share for correctly handling overflow issues. Now uses UINT_MAX for range comparisons, as it should be. [Skotlex] * Also modified the mob_db reading to use UINT_MAX for exp limits, changed their exp/job exp fields to unsigned int as well. [Skotlex] * Modified multi_level_up behaviour to work as specified by Kyoki. That is, on a level up, the max carry-over exp is the exp needed for the previous level -1. [Skotlex] * Modified the skill attack display of Meteor Assault and the Warm Skills (I think the caster should no longer do fancy animations now on each hit) [Skotlex] * Added back water elemental targets being inmune to SC_FREEZE [Skotlex] * SQL compile fix [Komurka] 2006/02/08 * Added battle config option skill_caster_check, which does a status_checkskilluse on all skill attacks. When enabled (default on) the caster of the skill is checked on all skill_attacks, which means that ground spells will make no effect if the caster is unable to fight (stunned, frozen, etc) [Skotlex] * Added battle config option status_cast_cancel. When enabled (default off) some status changes (freeze, stone, etc) will cancel your cast. [Skotlex] * Fixed the death exp penalty underflow bug. [Skotlex] * Rewrote/organized status_change_start, it now receives the base rate for the effect. It handles reducing this rate/duration through natural resistances and whatever else should reduce it. [Skotlex] * Fixes to exp2.txt on the novice job exp. Thanks to rollopop. [Skotlex] - Also modified exp2.txt to use the normal max levels by default. 2006/02/07 * Modified battle_check_distance, mobs should no longer find a diagonal spot on which they lock onto their target, yet fail to attack from. [Skotlex] * Removed the max level configs from battle/exp.txt [Skotlex] * Now NPC_POWERUP uses SC_INCATKRATE instead of SC_EXPLOSIONSPIRITS for enhancing damage. Instead of +1k atk per skilllv, it is +50% atk per skilllv. [Skotlex] * Fixed char server changing the save/last point to new grounds in certain situations. [Skotlex] * Fixed SG_STAR_ANGER not getting it's damage bonus at all. [Skotlex] 2006/02/06 * Added a custom exp table that goes up to level 1000 (db/exp2.txt). [Skotlex] - It uses a inverse exponential growth rate to mimic the official exp rate increase as close as possible. - It overrides the exp level of the last 5~10 official exp values for a smoother curve. - It's adjusted so that the Lv1000 exp requirement for Advanced Base/2nd Job is close to the unsigned int limit without going above it (limit is 4294967295 in my system. It goes up to 42k Million on Advanced Base lv1000, I think) * Fixed startnpctimer starting multiple timers instead of failing when the npc timer is already running. [Skotlex] * Venom Splasher update: [Skotlex] - always hits (but splash damage targets can still avoid it) - Being hit does not cancels it, - works at 75% or less of target's HP - being hit normally while under the count has a chance of causing poison. - Damage is +400% + 50*lv% * Using autoloot with no arguments now toggles it between @autoloot 0 and @autoloot 100% [Skotlex] * Falcon Assault now takes Blitz Beat lv5 as base damage. [Skotlex] * Fixed pc_makesavestatus not updating status.option correctly. [Skotlex] * Corrected Waterball so that higher levels can do insane amount of hits. [Skotlex] * Altered slave behaviour. No more random walking, will stay within 2 cells of their master. [Skotlex] * Reverted the Summon Slave behaviour to not adjust level based on number of current slaves. [Skotlex] * Coma no longer sends SP to 1. [Skotlex] * Updated Meteor so that when level 11 or more is casted, the area over which meteors fall is tripled. [Skotlex] * Dark elemental characters are now inmune to Curse. [Skotlex] * Fixed sc_data saving to sql buffer building method. Thanks to its_sparky. [Skotlex] * Changed the map zone reading from using pow to a bit shift. [Skotlex] * Experience has now been changed to unsigned int, and is read as such from the dbs. [Skotlex] * Increased HT_DETECTING seek range to 7x7 [Skotlex] 2006/02/05 * Added some of eAIRC bot code, written by me and LittleWolf. It is disabled and has no configuration options yet, as it is not finished. [Valaris] * Fixed and documented script command "callshop". [Skotlex] * Updated sq;-files/mob_db.sql with current mob_db. [Skotlex] * Updated sql-files/item_db.sql with current item_db. [Skotlex] 2006/02/04 * Skotlex's Falcon Assault fix. [Vicious] 2006/02/03 * Fixed the debug script messages specifying the wrong mapname for NPCs. [Skotlex] * Now you can't hide from earth elemental attacks (status_check_skilluse). [Skotlex] * Grand Cross/Grand Darkness can no longer get the ignore defense -armor piercing bonuses from cards. [Skotlex] * Loki's weil is now ignored by bosses. [Skotlex] * Land Protector and Gantantein should now ignore traps. [Skotlex] * Fixed Shinobi card so that it fails when you aren't next to a wall. [Skotlex] * After a guild master change, the new guild master has his guild skills blocked for 5 minutes to prevent abuse. [Skotlex] * Fixed txt-converter compilation errors [Komurka] 2006/02/02 * Fixed crash in status_change_timer. For some reason the block type switch was removed. [Valaris] * Crash fix in npc.c npc_timerevent. was: struct timer_event_data *ted = (struct timer_event_data*)ted; changed: struct timer_event_data *ted = (struct timer_event_data*)data; Skotlex, I am assuming it's calling from the passed data var, If I'm wrong please fix it. I just know what was there was definitely not correct. [Valaris] * Improved the NPC timer system to enable multiple timers going on at a time with different players attached to each. Now npc event timers are of two types: attached or global. The global timers don't have a player attached and can be started/halted by anyone. The character timers have a player attached, and they can only be stopped by a script that has the same player attached. [Skotlex] - Now player attached scripts will auto-abort when the atteched player quits the map server. - Of course, this requires some major testing as it's prone to have bugs... * Applied the Entry Reusage System to the battle delay damage timers. [Skotlex] * Fixed the map server complain when using the default user/password showing up if you set the new user/pass on the import file. [Skotlex] 2006/02/01 * Fixed compile errors and warning in chrif.c and charsave.c. [Valaris] * Map and char server now will complain if they are run using the default user/password set. [Skotlex] * Trick Dead makes you stop walking now. [Skotlex] * Soul Burn is not affected by Lex Aeterna, not affected by target's cards neither. [Skotlex] * Freeze and Stone take preference over Benedictio. [Skotlex] * Sleep/Stun/Petrify/Freeze block each other out. [Skotlex] * Fixed areamonster when the passed class is negative. [Skotlex] * Removed the clear screen when launching the server. [Skotlex] * Integrated the status change variables into a single structure for easier management. [Skotlex] * Break fall should no longer trigger when inflicted by freeze/stone/etc [Skotlex] * Fixed an overflow in grfio causing read problems in Win32 builds [celest] * Changed resnametable loading behaviour - grfio will load from data directory first, and then from the highest priority grf only if that fails [celest] * Increased grfio filelist limit to 1048576 to avoid problems when loading too many large grfs [celest] 2006/01/31 * Fixed skill_check_cloak to use the current skill level of the cloaking skill and not pc_checkskill() to know if a cloaker away from a wall should be uncloaked. [Skotlex] * Likely fixed opening guild storage. [Skotlex] * Removed no penelty mapflag for nifilheim. Confirmed on iRO. [Kayla] * Changed default value of gm_cant_drop_max_lvl to 98. Also reworded the comments for cant_drop_max and min. [Kayla] * Disabled pet skills by default. To my knowledge they are only enabled on cRO, not iRO nor kRO. [Kayla] * PF_SOULBURN no longer ignores mdef. [Skotlex] * HW_GRAVITATION should now invoke auto spells. [Skotlex] * Cleaned up damage return code. Reflect Shield and the like now should also trigger autospells from normal attacks (previously it was only worked on skill attack returned damage) [Skotlex] * Cleaned up Summon Slave mob skill to only summon number of missing mobs to complete the skill level (that is, SS level 5 will always bring the total count of slaves to 5, never above). [Skotlex] * Fixed being able to Encore skills you no longer have in your tree. [Skotlex] * Added no HP regen while Bleeding, -25% ATK and ASPD penalties as well. [Skotlex] * Added VIT reduces duration of confusion. [Skotlex] * Added "onspawn" mob skill condition. [Skotlex] * Changed the exp table format. The new format allows specifying exp tables for any particular class. Thanks to Playstester for converting the official exp table to the new format. [Skotlex] - UNTESTED: Report any problems asap. 2006/01/30 * Autoloot now uses the item's base drop chance rather than final drop rate to determine if it should autoloot the item or not. [Skotlex] * Fixed super novices getting +10 to all stats temporarily when their death count isn't zero. [Skotlex] * Fixed Kahai displaying HP-SP as the total healed instead of HP [Skotlex] * Cleaned up skill_repairweapon to prevent crashes when the target vanishes/changes/whatever before the weapon to repair has been selected. [Skotlex] * Parsing the Storage/Guild Storage from the char server will now fail if the storage has been modified and not saved yet. [Skotlex] * Being hit now cancels confuse. [Skotlex] * Added back the bleeding icon. [Skotlex] * Fixed Combo Finish Soul Linked Effect being a 11x11 area rather than 5x5 [Skotlex] * Added 'restricted' mapflag, based on lordalfa patch [Komurka] - you can set restriction zone on map (see mapflag/restricted.txt) - you can turn off item usage on certain restricted map in item_noequip.txt - you can turn off skill usage on certain restricted map in skill_nocast_db.txt * Moved MVP log code so it can log all MVP, not only when player gets MVP item, thanks to Hatred_ [Komurka] * One more small fix on 'bSPVanishRate' (hp -> sp) [Komurka] * Added bSPVanishRate to const.txt - Dark Priest Card should work now ^^ * Implemented bonus2 bSPVanishRate for Dark Priest Card [Komurka] - it isn't finished - I get '[Warning]: pc_bonus2: unknown type 0 50 10!' >< * Applied lordalfa patch - you can now forbid usage of certain cards on PVP/GVG/WoE defined in item_noequip.txt [Komurka] 2006/01/29 * Added support for more account states like "Unavailable due to hacking/bug investigation" etc, thanks to NeoSaro [DracoRPG] 2006/01/28 * Added the night mapflag to the new maps. Removed some indor maps. [Poki#3] * Added DISGUISE MobID; UNDISGUISE; script commands [Lupus] - Made them for Eastern Year of the Fire Dog Event.(to be uploaded today) 2006/01/27 * Added support for mob_avail.txt replacement for NPC classes. [Skotlex] * Added "sense_type" config to conf/battle/skill.conf to select which defense is displayed on the sense screen. Defaults to displaying def+def2. [Skotlex] * Modified traps so that once they trigger they set themselves as "Into the Abyss" casted traps, so that if you remove them, you won't earn the item. [Skotlex] * Fixed Basilica (small bug introduced yesterday) [Skotlex] * Hopefully cleaned out the warnings when compiling the char-SQL server. [Skotlex] * Updated the makefile for the plugins to take into account the ers.o file. [Skotlex] 2006/01/26 * Updated VC project files, thanks to D-Kalck. [Skotlex] * Rare drop announces will now be done based on the mvp_sd (character who did most damage) instead of sd (character that delivered final blow) [Skotlex] * Fixed TK Doridori bonuses to double your regen instead of giving 30Hp/3Sp [Skotlex] * Fixed Sense displaying def2/mdef2 when it should display def+def2 / mdef + mdef2. [Skotlex] * Fixed Super Novices losing their skill tree (showing up just basic skill) under certain circumstances. [Skotlex] * Cleanup and optimization of the movement routines. [Skotlex] * Added experimental feature "Cell Stack Limit". When enabled (see src/map/map.h) it should limit the amount of characters that can be placed on the same cell. That's assuming it works (experimental and untested as of yet) [Skotlex] * Hopefully fixed Benedicto checking on the west/east tiles instead of the left/right tiles of the caster. [Skotlex] * Fixed mobs being unable to move on tick loopback (which happens every ~51 days) [Skotlex] 2006/01/25 * Reverted last change, when you log again it still shows the fake icon. [Foruken] * Temporary fix to fake mute status when using pk_mode and !muting_player [Foruken] * Probably fixed the max base/job battle config options actually enabling characters to reach one more level than the max specified. [Skotlex] * Fixed BSS Sacramenti not hitting demon type enemies. [Skotlex] * Now poisoned monsters will show HP updates as their health goes down (let's see if this finally convinces people that poison works u.u) [Skotlex] * Splitted up battle_athena.conf into multiple configuration files. battle_athena.conf only contains import lines now, and all the configuration options are located in conf/battle/* [Skotlex] * Updated the db version with the new one by FlavioJS [Skotlex] * Improved the error reporting when failing to load a mob skill due to insufficient fields. [Skotlex] * Changed map_getallusers to use the db interface getall (hope it doesn't breaks horribly) [Skotlex] * Added an attack delay to TK kicks to prevent the top10 rankers from attacking normally during the skill animation. [Skotlex] * Updated script.c to display the file not found error using braces as delimiters to help when npc filenames include spaces and the respective file is not found due to them) [Skotlex] * Changed TK_RUN to a misc attack type which should enable you to halt the skill quickly after starting it. Updated SC_SPURT to be triggered when you stop running if you stopped running one sec or less after you started. Corrected the icon of SPURT to be that yellow Running Man. The previous footsteps effect was assigned to CHASEWALK. [Skotlex] * fixed battle config item_auto_get setting autoloot to just 0.01% drops rather than 100%. [Skotlex] * Added Sharp Shooting check to skill_attack to prevent hitting hidden characters. [Skotlex] 2006/01/24 * Some cleaning up of battle_calc_damage, Assumptio should now also reduce damage of all types of attack, not just weapon-based ones. [Skotlex] * Incremented SL_MONK combo SP cost reduction to 25% [Skotlex] * Updated Full Adrenaline Rush to work on all weapons except bows. [Skotlex] * Updated the script engine to report the src of an error when there's a problem with one of the script functions. For example, if there's a "player not attached error", it will also print which NPC caused it. [Skotlex] * Added RFIFOSKIP(fd,RFIFOREST(fd)) to the end of the login server's parse functions. This is good for clearing out packets of one byte. [Valaris] * Fixed noteleport mapflag affecting Warp Portal. [Skotlex] * Fixed map server crashing when parsing an incomplete mob-skill line. [Skotlex] * @autoloot 100 will now pickup items that have drop rates ABOVE 100. [Skotlex] 2006/01/23 * Added battle config "no_spawn_on_player", see battle_athena.conf for details. [Skotlex] * Fixed bows doing less damage on criticals when having high dex. [Skotlex] * Moved the enemy_critical adjustment to status_get_critical. [Skotlex] * Fixed @chardisguise to use the same id checks as @disguise. [Skotlex] * Fixed SightBlaster 'hitting' dead characters. [Skotlex] * Basilica check in status_checkskilluse expanded to help mobs release their target as soon as they walk into a basilica. [Skotlex] * When a player stops walking their to_x and to_y is updated to their present position. This MAY fix warp portal not warping players that were already there waiting to be warped. [Skotlex] 2006/01/22 * typo fixes (fell -> feel) [Komurka] - mob_db_mode_list.txt updated - removed some unneeded comments (//komurka) * Some changes of @main. Now you can send main-chat messages by sending whisper to nick "Main" (or any other, it can be set in inter_athena.conf). [LuzZza] 2006/01/21 * Changed gm_can_drop_lv battle conf switch to gm_cant_drop_min_lv and gm_cant_drop_max_lv [Komurka] * SL_SWOO (Esu) will only lasts 1/5 of normal time when used on a Boss-type monster [Komurka] -SL_SKE (Esk) won't work on a Boss-type monster anymore (if you KNOW that it should work on them write about it on forum; either way don't bother guessing ... SL can solo ANY boss with this skill ~.~) 2006/01/20 * Fixed the login-TXT login Log. [Skotlex] * Small update to sql-files/item_db.sql to fix speed potions (a complete update will be done when possible...) [Skotlex] * Fixed clone script command's duration being in ms rather than seconds. [Skotlex] * Taekwon Ready Stances combo time is now 2000 - 4*agi -2*dex ms instead of a flat 2 secs (same reduction that Monk combos get) [Skotlex] * Cleaned up code of SG_HATE, may fix the skill seemingly not working. [Skotlex] * Likely fixed Even-Share parties not breaking up when a character with too high/low level rejoins in char-TXT servers. [Skotlex] 2006/01/19 * Added config option atc_slave_clone_limit to limit the amount of @slaveclone's a player can have. [Skotlex] * The clone commands now fail when used on someone of higher GM level than the caster. [Skotlex] * Increased the size of the clif_disp_onlyself packet by one to see if it fixes the mysterious cropping of the last character in the message. [Skotlex] * Now when use_statpoint_table is set to yes, it will be used to determine the stat points you earn on level up. [Skotlex] * Small fixes as pointed out by FlavioJs in the login TXT server to prevent crashes in Win32 compiles. [Skotlex] * Merged Marquis's implementation of Enjoyable Rest's earth scroll bonus. [Skotlex] * Fixed players being able to send custom crafted mute requests that would go through regardless of their gm level and mute others. [Skotlex] * Updated mapflags [Lupus] * Modified the client_connect function in socket.c to allow different parse_functions to be called based on the listening socket. After a make_listen_bind returns a listen fd, set that fd's func_parse member to whatever parse function to be used. If this value is not manually set it will just use the default_func_parse function. This only affects server listening sockets in which the func_parse member isn't even used. [Valaris] * gvg_traps_target_all now also affects traps in pvp maps. [Skotlex] * All reflected damage has now a chance to auto-cast spells. [Skotlex] * Fixed Casting ground spells from within basilica. [Skotlex] 2006/01/17 * Updated the map server code to use some of the new db functions. [Skotlex] * Fixed ground skills checking the wrong target-type on movement, hence making them mostly useless (this is what the Warp Portal report was about) [Skotlex] * Some code updates to implement the new db interface. [Skotlex] - SQL compilation not tested, so if it breaks someone report to fix it :X * Added @clouds2 and clouds2 mapflag using effect 516. [Valaris] * Fixed some weather effects not working or not functioning correctly. [Valaris] * Cleanups and organization to maps_athena.txt and map_index.txt, thanks to Poki for the cleanup work. [Skotlex] * Some cleanup of the SG_FEEL code [Skotlex] * Fixed debug mode compiling in VC7.1. Added optimizations to VC7.1 release mode. Defaulted VC7.1 SLN to debug mode. [Lance] * Temperory solved the freeing freed pointer error upon map-server shutdown. [Lance] 2006/01/16 * Fixed clif_disp_onlyself packet length, thanks to Orn. [Skotlex] * Imported Freya's autoloot system which enables one to specify the maximum drop-rate to loot. [Skotlex] * Refix of the mapreg SQL saving fix of a while ago... [Skotlex] * Playtester custom eamobs spawn updates: coal Mines, umbala fields, and minor changes to Sphinx and Geffen Dungeon. [Skotlex] * Incremented a bit clone skill usage rate, their rate/delays are now affected by the battle_config options mob_skill_rate and mob_skill_delay [Skotlex] * Optimized use of BL_* constants by making them stackable (meant for map_foreach* calls). Should improve performance by avoiding battle_check_target calls on a bunch of invalid targets such as items/skills/npcs on skills and other misc places. [Skotlex] * Fixed mob skills that should trigger on status on "any bad". [Skotlex] * TK classes no longer are inmune to the strip-effects of Jump Kick [Skotlex] * Fixed SQL mapreg saving. [Skotlex] * Reverted Ice Wall Behaviour (you can snipe/cast through it again) [Skotlex] * Fixed possible crash in skill_check_condition on consume-delayed items [Skotlex] * Skills whose range is increased by Vulture Eyes now get the range increased by 10 for non players (assumes VE level 10). [Skotlex] * Added cardfixes of near_attack_def_rate and long_attack_def_rate to misc attack calculations. [Skotlex] * Fixed Spirit of Wizard not working in a couple of instances. [Skotlex] * Advanced Book now gives 1%*skill level success chance to create element convert potion [Skotlex] * Changed the FEEL skill implementation to store/use map indexes instead of map names.[Skotlex] * Fixed compilation of plugins. [Skotlex] * Applied flaviojs's new db interface and fixed compatibility problems with Visual Studio. [Lance] 2006/01/15 * Fixed poison damaging player even when under 25% hp. [Skotlex] * Fixed permanent character variables in Char-TXT [Skotlex] * Fixed previous change for stable. Whoops my 5am work again. [Kayla] * Fixed the trade exploit allowing for a user to send packets while in a trade. For instance the bank NPC becoming a zeny dupe. Kudos to clown. [Kayla] * Added script source error reporting to set and getarrayelement, should print NPC name and location (map, coordinates) on the console when there's an error with these two commands. [Skotlex] * Removed treasure chests spawning upon agitbreak, leading to exploits. [Lance] 2006/01/14 * Removed the 5% success penalty for trying to make a convertor for which you don't have the relevant enchant skills. [Skotlex] * Fixed compilation of Login Converter. [Valaris] * Fixed bSPGainRace and bExpAddRace with RC_NonBoss and RC_Boss. [Valaris] * Lex Divina now shows the animation even when used on someone you can't (non-muted, non-enemy player) [Skotlex] * Quick hack to make Shield Reflect trigger auto-spells (only this kind of return damage does it? Because other reflect cards like Orc Lord behave exactly the same way...) [Skotlex] * Fixed grf loading to attempt to load from all grf files specified in grf-files.txt (looking for them in the same order specified in the file, returns the first match found) instead of only looking up on the last specified grf... [Skotlex] * Fixed compilation of plugins. [Skotlex] * Added error reporting to the db when a null key/data is attempted to be inserted and the db is configured to not allow them. [Skotlex] 2006/01/13 * Fixed labels located at the beginning of a script not being counted at all. [Skotlex] * Applied blackhole89's patch to enable dynamic menus. [Skotlex] - Script reference doc updated accordingly. * Ranking Taekwons with lv 90+ no longer get Quest/Wedding skills for free.[Skotlex] * Readjusted Scream And Frost Joke so now the effect goes off no matter where the caster went, but the effect will happen only around the area where the skill was done regardless of where the caster is (which is how it should work from a logical stand point) [Skotlex] * Scream and Frost Joke now take effect 2secs after casting, and caster must remain in same map for it to take effect. [Skotlex] * Flying Side Kick can't be used by Soul Linkers now. [Skotlex] * npc_reload should now correctly remove mobs and npcs that aren't placed in any map (such as mobs that were killed and are waiting for respawn) [Skotlex] 2006/01/12 * Fixed Ice-Wall range problem. [LuzZza] * Corrected the guild_db_final function in int_guild.c of SQL char-server to compile and function with the new db code. [Valaris] * Fixed some advanced skills being able to be copied even when restricted [Vicious] * Fixed a possible crash-source related to item-picking packets. [Skotlex] * Now Top 10 ranking Taekwons with base level 90+ get their whole skill-tree maxed out (but only as bonus-skills, they aren't saved on the dbs) [Skotlex] * Some cleaning of the char_name_letters implementation. Characters don't need a space between them, in fact, placing a space in that config makes the space count towards allowed/disallowed characters. [Skotlex] * Some modifications to the db code to make the code portable. It may compile on windows now. (note I can't test SQL compiles yet so report any problems ASAP) [Skotlex] * Fixed Venom Knife consuming two daggers. [Skotlex] * Inverted the packet order in many skills which cause status effects. The client expects the status-change packet to arrive before the skill packet in order for opt3-related changes to make effect on the character. [Skotlex] 2006/01/11 * Added @main command into atcommand_athena.conf. [LuzZza] * Tuxedo and Wedding Dress no longer get a 'forced' gender check regardless of config ignore_items_gender setting. [Skotlex] * Added support for 'invisible' shops. These are shops that are loaded but not placed on any map, so you can't click on them. [Skotlex] - Example: -shopInvisible Dealer-,1750:-1,1751:-1,1752:-1,etc... - Make sure they have a unique name if you want to reference to it with... * Added script command 'callshop' for invoking shops from within a script. [Skotlex] - Usage: callshop "Shop Name", flag; - Distance to shop is still checked, so it's best to use 'invisible' shops. - flag determines shop selection: 1: Show buy list, 2: show sell list. Anything else: show the buy/sell/cancel menu. - Function returns 1 if successful, 0 otherwise, but it is recommended that the script should be closed right away to prevent problems. - Documentation to the scripts_command.txt reference file not yet added because this command is as of yet untested and may need further refining. * Newly created SQL guilds won't save the member-list right away (this seems to be the reason why sometimes when creating new guilds, the guild-master keeps guild_id == 0 in the tables) [Skotlex] * Fixed char/int_storage.c reporting lines with too many items when in reality said items had the exact max amount allowed. [Skotlex] * Moved the status_change_clear code below the exp penalty so that the SC_BABY effect will work. [Skotlex] * Fixed the map_index never finding the last map specified in the map_index file. [Skotlex] * Fixed an overflowed pointer in char/inter.c, and an already free'd pointer error in map/guild.c [Skotlex] * Added battle option party_item_share_type, now you can choose between round-robin (previous implementation) and random (default) [Skotlex] * Fixed compilation of the plugins (due to the db change) [Skotlex] * Fixed a few issues with the map server (notably npc_command_sub was broken) [Skotlex] * Added proper escaping of the motd string before inserting it on the rag server info SQL table. [Skotlex] 2006/01/10 * Updated the map-server to conform to the new db interface. Removed DB_DELAY_FINAL_CHANGES and related code from db.* as now eA fully complies to the new interface. [Skotlex] * Crafting Arrows, Weapon, Forging/Upgrading now all fail if you have an npc going on to prevent your inventory from being modified while selling. [Skotlex] * Updated the char-SQL server to etc etc etc new db etc etc etc. [Skotlex] * Cleaned up the description of size_fix.txt [Skotlex] * Updated the char-TXT server to be blah blah blah new db blah blah. [Skotlex] * Updated both login servers to be fully compliant with the new db interface. [Skotlex] * Moved skill damage bonuses from cards to the 'second layer' which means they are applied on top of previous damage bonuses rather than just adding to them. [Skotlex] * Some more updates to the db code as specified by FlavioJS [Skotlex] * Fixed the memory leak of npc_unload_ev. [Skotlex] 2006/01/09 * Some more updates regarding the new db system. [Skotlex] - Note that there's currently a leak regarding npc_events (ev_db), but this one is not a serious problem (unless you use a lot of npc_reloads) and will be fixed as the db gets improved. * Moved the Kaupe code to battle_calc_weapon_attack where it will dogde all weapon-based attacks that can be dodged (giving the illusion of infinite flee for skill's duration). [Skotlex] * Moved Sonic Acceleration and Soul Linked SB damage bonus to the second layer of skill modifiers. [Skotlex] * Enchant Deadly Poison and True Sight damage bonuses are now applied after skill modifiers rather than added with them (damage % stack type). [Skotlex] * Modified Ice-Wall to work using cell types defines instead of directly modifying the gat terrain information. Main reason for this is to enable pc_setpos to place players on top of an ice-wall, because otherwise it was forcing players to warp-around even in maps with noteleport set which is prone to exploits. [Skotlex] * Fixed SG_FUSION (SG_FUSION <-> SC_FUSION #_#) [Komurka] * Now sense elemental values are again uncapped (so enemy with -25% resist will show 230% instead of 0%), as requested :P [Skotlex] * Replaced the db subsystem for FlavioJS's implementation and initial work on updating the eA code to use it as intended. [Skotlex] * Fixed Char-TXT server saving last/save maps with spaces on the left. [Skotlex] * Fixed Char-SQL server saving new character's maps with spaces on the left. [Skotlex] * Fixed Charsave method 1 saving memo maps with spaces on the left. [Skotlex] * Changed the order of packets sent for Assumptio (may fix the visual not showing up?) [Skotlex] 2006/01/08 * Fixed the guild SQL cache removing guilds from memory when said guilds had no data to save (but were not yet marked for removal) [Skotlex] * Added a cap to limit Star Gladiator's job level to that of the normal classes (instead of 2nd classes) [Skotlex] * Fixed TXT char server parsing only the first character permanent variable received from the map server and ignoring the rest. [Skotlex] * Fixed @users crashing the server. [Skotlex] * Added Arrow Repel to the list of skills whose range is increased by Vulture Eye. [Skotlex] * Fixed the item pick-up rule for party options being working backwards. [Skotlex] * Fixed progress info in TK_MISSION [Komurka] * Fixed an aproximation error when calculating distances which causes stuff like mobs thinking they are within attack range when they actually aren't [Skotlex] * Char-server will now be notified after a character logs out when using charsave_method:1 [Skotlex] * Added check to update pet's position on pc_movepos (stuff like High Jump) when the master moves too far away or to a position the pet can't reach. [Skotlex] * Fixed char-save method 1 saving map names with padding spaces to the left. [Skotlex] * Now sense elemental values are capped to 0 as lower bound (so for an enemy with -25% resist, it'll show 0% instead of 230%) [Skotlex] * Updated sql-files/ mob_db.sql and item_db.sql to current TXT data.[Skotlex] 2006/01/07 * If player is dead, and is spawned (such as @refresh), death packet is sent. [Valaris] * Cleaned pc_attack_timer so that the attack timer will auto-readjust when it triggers during the can't act tick instead of cancelling the attack sequence. [Skotlex] * Fixed compilation of the TXT-converter. [Skotlex] * walkto x,y request packets are now ignored if you are sitting. [Skotlex] * Fixed a typo that was making the party item-pickup style shared not taking effect for the item_first_get_time regardless of setting. [Skotlex] * Applied Playtester's custom mob spawns to the eamobs/ set. [Skotlex] - These custom mob spawns are an experiment to balance out mob spawns and put some sense into them (no crap like too strong AND too weak mobs on the same floor, increasing mob difficulty the deeper into the dungeon you go, etc), without moving mobs too far from where players are used to see them neither. - To enable them, modify scripts_main to use scripts_eamonsters rather than scripts_monsters. - Currently, the modified dungeons are: Glast Heim, Geffen Tower, Clock Tower, Sphinx, Pyramids, Byalan. * Added check to make sure guildspy and partyspy variables have value. [Valaris] * Separated the permanent variables from the character status structure. [Skotlex] * permanent variables are now loaded on their own packets as needed to reduce the bandwidth wasted between servers. [Skotlex] * Permanent account variables are now saved when the script is finished instead of each time they were modified. [Skotlex] * OnInit scripts and related code now executes after all perm variables are received (so now account variables are accessible during it) [Skotlex] * Fixed typo in pc.c causing crashes in Line 769. [Lance] * Corrected VC7.1 prject files to include mapindex.c and mapindex.h [Lance] * Corrected Wrath of the Star formula (added missing STR in equation) [Komurka] - Added movement speed bonus to SG_FUSION (same as PecoPeco gives) - You can now 'turn off' SG_FUSION * updated NoIcewall maplags, thanks to Sir Loon [Lupus] * soundeffectall modified to rely on dependancies depending on situation. [Lance] * Modified getd to return 'pointer' (will be 'dereferenced' automatically) instead of value, making it very flexible when paired with getelementofarray() [Lance] 2006/01/06 * Corrected main.sql having incorrect syntax [Foruken] * Cleaned up some maps in maps_athena.txt and added a bunch of cloned maps to map_index.txt [Skotlex] * Refine bonus is no longer increased by the number of hits from the skill except for TSS [Skotlex] * Dispelled Berserk won't drop HP back to 100 now. [Skotlex] * Mobs that use NPC_SUICIDE won't give neither exp or loot now. [Skotlex] * Summoned mobs that cannot move will be removed from the map when the master is gone to another map AND the mob's map is a gvg ground. [Skotlex] * Fog of Wall effects now work in both directions (outside -> inside, inside->outside) [Skotlex] * Fixed the sql guild loading always returning a blank guild when the guild_id does not exists! [Skotlex] 2006/01/05 * Some changes to the guild SQL code to report whenever a guild's id is not matching the one it was stored with in the db, which in turn free's the guild and doesn't saves it to perhaps prevent data corruption. [Skotlex] * Corrected the fifo-buffer readjusting code to set a reserve-buffer size of 1/8th of the inter-server link (32K) for said links. [Skotlex] * The mapif_send* and charif_send* functions (char/login servers) will now adjust the buffer size when there isn't enough space to write data to them rather than abort sending the data. [Skotlex] * Increased inter-server socket buffer size to 256*1024. Should fix problems with 0x3004. [Kayla] * Increased inter-server socket buffer size to 192*1024. Should fix problems with 0x2b01. [Kayla] 2006/01/04 * Fixed buildin_monster not working for random classes (dead branch, etc). [Skotlex] * Reverted inter-server socket buffer size to 131072 bytes. [Valaris] * Removed reduction of socket buffer sizes after WFIFOSET if the max size is >= FIFOSIZE_SERVERLINK. This should reduce inter-server buffer overflows. [Valaris] * Script command 'monster' will now fail when trying to spawn a mob-class that is not in the mob_db (warning will be printed on the console) [Skotlex] * Fixed a crash when spawning a mob who's class is not in the mob_db. [Skotlex] * Some cleanups and improvements to the character saving algorithm meant to make it harder to have dupe exploits during char-map connection lag moments. [Skotlex] * Doubled the inter-server link buffer size. [Skotlex] * Fixed status_get_adelay messing up the mob's aspd :X [Skotlex] * Changed skill_delayfix to use the amotion value as default delay for weapon skills with no delay instead of attack delay (adelay is actually twice your aspd, amotion is the same as aspd) [Skotlex] * Added upgrade_svn4783.sql, which corrects the structure of the mapreg table to use varchars as it should. [Skotlex] * Fixed Meteor Assault. [Skotlex] * Fixed (I hope) the double free'd pointer issue in the login servers. [Skotlex] 2006/01/03 * Fixed the warp unloading code. [Skotlex] * Updated Jump Side Kick to also clear Berserk Pitcher. [Skotlex] * Preserve now protects against the stripping effects of Side Kick. Taekwon Classes (TK/SL/SG) are also inmune to it. [Skotlex] * Hopefully fixed the guild information not being sent in some situations when people are added/removed from a guild. [Skotlex] * Some cleaning up and bug fixes to the guild module of the char-sql server. Let's see if it fixes anything up... [Skotlex] * Added battle option show_party_share_picker. When enabled tells the picker of the item who received the item when in a party with 'Party Share' loot style. [Skotlex] * Added the nullpo_retv line required for win32 compiles... [Skotlex] * Added some cleanup code to properly remove all warp related information on npc_unload (untested as of yet!) [Skotlex] 2006/01/02 * Completed (almost) packet 0x1e9 which gives the party info. Now you can see the party's item options when opening the alt+p menu. [Skotlex] * Fixed regen only working when overweight. [Valaris] * Added body size to clones. [Valaris] * Corrected TK_JUMPKICK to remove Soul Linker spirit buffs and related effects (except Berserk-Pitched effect) [Skotlex] * Corrected TK_RUN to give +10 dmg bonus to kick skills when not wearing a weapon. [Skotlex] * Added Kaina's Enjoyable Rest bonus and Max SP bonus. [Skotlex] * Fixed Stone Curse consuming gems while Soul Linked. [Skotlex] * Fixed party-change-map packet incorrectly checking if the even share rule was broken (party share should now correctly break on map-change, or when a player has it's level reset) [Skotlex] * Corrected the Jump Kick base-level damage bonus when combo-used. [Skotlex] * Added the running damage bonus to the TK kicks. [Skotlex] * Made the TK kicks end the Soul Linked status on targets. [Skotlex] * Corrected Spirit of Wizard to nullify any bounced back spells. [Skotlex] * Cleaned up the natural/skill HP/SP regen routines. [Skotlex] * Fixed Turn Kick not knocking back nearby enemies. [Skotlex] * Added the damage bonus to Flying Side Kick when used from a combo. However I am waiting for the actual equation (currently just does +300% dmg) [Skotlex] * Fixed Counter Kick for ranking Taekwons. [Skotlex] * Added walk slowdown and aspd penalty to Eska. [Skotlex] * Fixed status_get_size which seemed severly broken. [Skotlex] * Fixed Kahai to only display actual amount of HP healed. [Skotlex] * Now when a script's map is not found (or not loaded on the map server) the script engine will skip the whole script instead of just the first line. [Skotlex] * Fixed Soul-Linked Dancers not receiving the Bard songs. [Skotlex] * Updated Joshuaali's VC-8 project files. [Skotlex] 2006/01/01 * Some improvements to the login server (txt/sql) to prevent memory 'leaks' from accounts that logged in but where never properly set as logged out. [Skotlex] * Fixed mapindex not working for last map loaded in map_index.txt [Skotlex] * Added support for packet 0x1e9, party_main_info. Packet is still incomplete and the client is ignoring it currently... [Skotlex] * Changing party options now does not alters item party options. [Skotlex] * Corrected Kahai healing even when there's not enough SP to do so. [Skotlex] 2005/12/31 * Fixed the additional effects on normal attacks of Enchant Poison, Enchant Deadly Poison and Kahai not taking effect except when the attacker was a player. [Skotlex] * Resurrection now fails on gvg maps (when reviving) [Skotlex] * Kaite now works on player-casted spells regardless of level... [Skotlex] * Fixed Kahii healing 0 rather than 200*skilllv... [Skotlex] * Mobs will now go after the loot as soon as they spot it rather than on their next random-walk time. [Skotlex] * Set the 56th byte in packets 7b and 1da. It deals with acceleration in directions. It's just like the final byte in packet 0x87. Server-side update of this still needs to be figured out. [Valaris] * Fixed Kaziel not starting Kyrie Elison upon resurrection. [Skotlex] * Fixed Kahai's healing display. [Skotlex] * Fixed Kaite bouncing back always one spell. [Skotlex] * Fixed and tested @waterlevel. It requires the grfs to be present as the map layout height information is stored there but not in the map data kept in memory. [Skotlex] 2005/12/30 * Disabled certain packets from taking effect during trades to prevent possible exploits (such as picking and dropping items, buying selling from npcs, etc) [Skotlex] * Now you can't move items to/from your inventory to the cart/storage during a trade (this is to prevent possible item dup exploits) [Skotlex] * Emergency Recall now only works from within woe grounds... [Skotlex] * Removed returns from non-null lines in MOTD. Replaced returns in null lines with a space. [Valaris] * Fixed a bug where MOTD wasn't displaying blank returned lines. [Valaris] * Updated mapindex so that name lookups ignore extensions, and the loaded maps are always terminated in .gat. Id lookups will always return a string terminated in gat. Purpose? It enables specifying mapnames without the .gat extension, so you can have npcs in prontera, no need for the .gat. And the returned string always has a .gat for needed when it is passed to the client. Now you can safely get rid of the .gat extension in all mapnames. [Skotlex] * Fixed the txt-converters so they compile cleanly again. [Skotlex] * Added mapflag script support for no loot, no exp, no return, no warp to, nightmare drops (see db/const.txt for names) [Skotlex] * Removed an extra } in int_party.c that caused compile errors. [Valaris] * Fixed a crash when warp portals passed from passive to active. [Skotlex] * Added a missing label (M_0) that was causing people to freeze when viewing the city list from "Miss Yoon" [Zephiris] 2005/12/29 * Newly created char-SQL guilds will be saved inmediately rather than at their next turn in the cache (may fix those guild disappearing errors) [Skotlex] * Implemented a map-index which maps map-names to a unique number, this reduces memory required to store maps as well as the size of related packets between the char/map server. Maps and their indexes are stored in db/map_index.txt, and the index of a map should NEVER change (see file for more details). The index is translated to/from map-names for saving, so save-structures are not required to be modified. [Skotlex] - PD: The new mapindex also found a bunch of broken map names in various NPCs, someone will have to go fix them up. * Updated the party member structure to hold the char_id. For end users, the most noticable change is that now you can have more than one character from the same account belong to the same party. [Skotlex] - TXT users will have to wipe the party files, SQL users use the respective upgrade file (upgrade_svn4726.sql) to generate the new party column. * Updated the char-sql server to hold parties in memories until they are no longer needed (like the guild-cache), also optimized the save routine to avoid needless SQL calls. [Skotlex] ** WARNING: Because of the previous optimizations, a lot of code was changed around the map/char servers, the char-sql's party system got pretty much a rewrite, so some problems are to be expected. Some basic testing with parties over here showed no problems, hence the work is getting commited as it is because it isn't getting any better without further testing. * Set value of the last byte in packet 0x87 (walkok) to 0x88 (10001000). This is a default value in Aegis, and has something to do with animation speed in certain directions. This byte is going to need to be fully analyzed since it does change in Aegis, just that I have been unable to figure out what the conditions are. [Valaris] * Mob skills are not even read now if mob skills are disabled in battle_athena. [Skotlex] 2005/12/28 * Fixed xmas and wedding palette ignore options. It will also no longer send the dye packet if @dye is used. [Valaris] * Some code cleanup meant to fix possible memory leaks regarding parse_script() [Skotlex] * Small fix to party-share item pickup which should fix the current item dup exploit. [Skotlex] * Merged Reddozen's implementation of Kahai. [Skotlex] * Implemented Kaite (it simply changes the target of spell to the caster, so the caster's status changes and defense are the ones considered) [Skotlex] * Removed Guilds Glory from guild skill tree, can be enabled with require_glory_guild battle conf switch [Komurka] * Cleaned up the implementation of Poison and Deadly Poison. Corrected a bug on Deadly Poison that was KO'ing human players when it triggers under certain circumstances. [Skotlex] * Added guild_skill_tree.txt [Komurka] - corrected guild skill tree * Battle Orders, Regeneration, Restore and Emergency Recall now share their 5 minute delay. [Skotlex]] * Implemented SC_INTRAVISION [DracoRPG] * Reorganized a bit DEF/MDEF calculation code [DracoRPG] * Added a small licence notice at the top of every Athena source/header file, I've tried to put it only where it should have been but I'm not a pro ^^ [DracoRPG] 2005/12/27 * The 50% Weight Icon will now show up at whatever % was specified in natural_heal_weight_rate [Skotlex] * Fixed char-txt server crashing if trying to read storage lines with more items than the max (excess items will simply not be read and a warning printed) [Skotlex] * Added silent_console config option to the servers to filter out the console output (login_athena, char_athena, map_athena config files). Makes it possible to hide unwanted messages by category, so for example you can remove all info messages, or all warning+notice messages, etc. [Skotlex] * Removed unused battle switches enable_upper_class and unit_movement_type. [Skotlex] * Reenabled battle switches pet_defense_type, mob_defense_type and mob_remove_damaged. [Skotlex] * Applied Irmin's patch to add support for SQL codepages. [Skotlex] * Fixed friend list saving if using a custom char table name (SQL version). [Valaris] * Added check for mute in main chat [Foruken] * Likely fixed lose Hp/Sp script commands when used on accesories. [Skotlex] * Added 2 new script commands: getfatherid, getmotherid [Lupus] * Fixed compatibility problems with stricter compilers. [Lance] * Added joshuali's new VC8 project files and SQL database upgrade script. [Lance] * Fixed juicer script typo, eliminating unlimited juicing capability with zero zeny. [Lance] 2005/12/26 * Added check for free'd guild pointer beforing freeing in guild_save in int_guild.c. [Valaris] * Added @kamic command. Now you can send colored GM-messages. Syntax: @kamic . Color is 3-bytes hexadecimal number RRGGBB. [LuzZza] * Implemented main chat (global chat channel). Usage: @main , @main . [LuzZza] * Chasewalk players can now be hit in the same way a Cloaked player could. [Skotlex] * Added option mob_npc_event_type, read battle_athena.conf for details. [Skotlex] 2005/12/24 * Fixed @go, thanks to Persian [Vicious] * Updated @go command for new cities, done by Harbin [Vicious] * Added root user check and warning to non-Windows compiles. [Valaris] * Added a check to remove characters that would normally be left unremoved during shutdown because they just happened to be between maps. [Skotlex] * Fixed the production code always giving 1 item instead of the value they should (50/100/200 for Twilight Pharmacy skills) [Skotlex] * Corrected easy path searching algorithm failing for some cases (which incidentally seemed to be the reason skill_wall_check was broken) [Skotlex] * Fixed compile for TXT map-server. [Valaris] * Fixed stone curse's defense being checked versus int rather than mdef. [Skotlex] * Fixed firewall treating everyone as undead/fire-element. [Skotlex] * Added SQL read of cast_db. [Valaris] * Added SQL read of skill_require_db. [Valaris] * Added SQL read of skill_db. [Valaris] * Added setting use_new_sql_db to inter_athena.conf for development. Do not enable this setting, it will be merged into use_sql_db once all work is finished. [Valaris] * Added some work towards sqlizing the rest of the databases. [Valaris] * Changed @help2 to #help to display char commands. Cut @help in half @help2 has the other half. [Kayla] 2005/12/23 * Missed a change in txt login.c for bind_up. [Valaris] * Cleanup organization of clif.c and script.c. Please don't put extra functions beyond inits, try and organize a little. [Valaris] * Removed login_ip option from login_athena.conf as it is not used. [Valaris] * Fixed bind_ip option in login servers. [Valaris] * Fixed a bunch of terrible typos in chrif.c [Skotlex] * Fixed a terrible typo in the handling of broadcast messages which was causing the map server to send garbage packets to the char server. [Skotlex] * Added resistance (int + luk/3) to Stone Curse's equation [Skotlex] * Updated sql-files/item_db.sql to current txt version. [Skotlex] * Fog of Wall update... Blindess won't affect bosses, blindness ends as soon as you step out (players only) [Skotlex] * Implemented the Strip equipment effects on mobs. [Skotlex] * Now when Berserk ends, the char's HP goes to 100. [Skotlex] * LK's Concentration now gives +50 hit rather than +50% [Skotlex] * Inverted the handling of Individual/Shared item pickup rule for parties. [Skotlex] * Fixed the item ruling for parties not being correctly read from the save files. [Skotlex] * Now Star Gladiator uses 2nd Adv.Class Job EXP table (13th column) [Lupus] - In future there could be added the 14th EXP column, specially for Star Gladiator 2005/12/22 * Begin work on packet optimization .. not done yet [MouseJstr] * Finished work on @help/@help2. @help will no longer show # commands. @help2 shows them instead. [Kayla] * Fixed compile warnings in atcommand.c and map.c. Fixed compile error in script.c. [Valaris] * wedding_modifydisplay's default is now no (that's how it is on official) [Skotlex] * Some cleaning to skill_attack, also added target checking for splash attacks/groundbased skills [Skotlex] * Mobs will now stop walking if their target no longer exists (picked up items, for instance) [Skotlex] * Modified firewall to cause no damage delay when hitting undead characters. It may fix undead mobs warping when walking through the firewall. [Skotlex] * Added script command "clone" for cloning of players. See doc/script_commands.txt for further information. [Skotlex] * Added @waterlevel debug command to read/change the current's map water-level (command untested) [Skotlex] * Enabled names for forged weapon/created Potions by default [Lupus] - Old issues have beed solved long time ago, now items by TOP10 BS/ALCH gain their TOP10 bonuses 2005/12/21 * Now left_cardfix_to_right won't take effect when there's no weapon equipped on the right hand. [Skotlex] * Updated slave AI to support player masters as well (that is, you could have a non aggressive slave, and it will target any mobs the master targets) [Skotlex] * Added battle option skill_wall_check, when enabled, all ground skills will do a check for each cell to guarantee a straight path between the cells and the target tile. Should prevent AOE skills from hitting through walls. Due to the possible performance penalty this setting brings, it defaults to no currently. [Skotlex] * Default skill delay for skills with no delay is now the normal attack delay. [Skotlex] * Extremity Fist/Charge Attack will fail if the player can't move to the target. [Skotlex] * Prepare kick skills now only fail for Soul Linkers. [Skotlex] * Merged in Marquis007's work on SL_SKA/SL_SWOO [Skotlex] * All skills except Shield Boomerang get the weapon's refine bonus now. [Skotlex] * Taekwon Ready Stances will now fail if you are a Second Job of the Taekwon Tree (SL, SG) [Skotlex] * Another fix to item picking for party-share. Hopefully it works alright now (at least I believe it should be dupe-proof now) [Skotlex] 2005/12/20 * Updated water heights for some maps, thanks to [Lupus] - removed p_track02.gat from the maps list. Thanks to Justin84 * Fixed produce_db items always failing... [Skotlex] * Hopefully fixed picking up items on a party-share type of party. [Skotlex] * Txt map servers will now send the whole list of online characters at UPDATE_INTERVAL (10 secs) rather than CHECK_INTERVAL (1 hour) so that the online.html file will be correctly updated. [Skotlex] * Fixed char_sql and char crash because of buffer overrun. [Lance] * Added a flag to tag non-weapon based skills so that they don't get the following bonuses: Star crumb damage, Mastery bonuses, Weapon Refine damage upgrades. Currently applies only to shield skills. [Skotlex] * Removed use of castle_id for guilds in char-sql server (use corresponding upgrade_svn* file). TXT servers haven't been touched yet because that would mess up the guild save files. [Skotlex] * Online list of characters will be sync'ed every 10 secs for TXT servers. [Skotlex] * Merged in Reddozen's work to get Twilight Pharmacy working. [Skotlex] - Create Deadly Poison Bottle and Holy Water are now both handled by the item producing code. 2005/12/19 * Fixed char servers not parsing correctly the online count packet (/who should work fine now) [Skotlex] * Fixed the Dodge walking speed bonus to Assassin. [Skotlex] * Added the new Garden City Hugel and Kiehl maps. [Valaris] * Corrected Kaupe/Kaizel so that you can cast it on self/family when not-linked, and anyone when linked. [Skotlex] * Fixed the mob damage log not getting the ID of the attacker registered... [Skotlex] * Added a new timer which updates only the count of characters on the current map server to the char server. Update interval is 10 secs. [Skotlex] * Updated status_clear_debuffs to clear many other types of ailments (Gospel should be clearing up most negative status changes now) [Skotlex] * Fixed exp calc type 0 (dmg/total dmg) being calculated as 0 always. [Skotlex] * Implemented the item pickup style for parties. [Skotlex] - Party share distributes items in round-robin fashion among players who are in the same map. - Pick-up Style shared is needed for anyone to be able to pick up the item bypassing the timers set for first/second/third sd. [Skotlex] * Optimized map server's online-listing update timers. [Skotlex] * Some updates to the online db in the char/char_sql servers, should help fix some memory leaks due to chars left tagged as 'online' even though that's incorrect. [Skotlex] * Added buildin_warpchar script function. Useful for warp one player from another player npc-session. Sytax: warpchar "map.gat",x,y,Char_ID; [LuzZza] * Now opening storage will fial if the guild storage is open and viceversa. [Skotlex] * Total damage a mob receives is now stored on it's own variable. Damage log implementation clean-up. [Skotlex] 2005/12/18 * Fixed Close Confine not affecting the caster. [Skotlex] * Fixed all skills except Extremity Fist not getting the weapon size modifiers [Skotlex] * Fixed Warp Portal checking for noteleport instead of nowarp mapflag (again?) [Skotlex] * Fixed baseJob working as baseClass (I hope it works fine now) [Skotlex] * Fixed Doridori bonus for Super Novices [Skotlex] * Updated new MOTD code so that it can compile on VC. [Valaris] * Fixed clone's dyes changing when they attack. [Valaris] * Declared pc_read_motd(void) in pc.h for the motd reload command. [Valaris] * Added @reloadmotd for reloading the motd.txt into memory. [Valaris] * motd.txt will now load into memory at startup instead of being read everytime a player logs in. [Valaris] - motd.txt can now have lines commented with "//" . - MOTD_LINE_SIZE is defined in pc.c, change this to increase maximum amount of lines allowed in motd.txt. - Default motd line maximum is 128. * Added a new script function 'setitemscript ItemID,"{ end; }"' [Lupus] - Very useful for events that give TEMP item bonuses for short time period 8) A Custom New Year Event NPC's coming soon. 2005/12/17 * Updated the svn eol-style properties to make merging between linux and windows easier when we use more complex branching system [4544: MouseJstr] 2005/12/16 * left_cardfix_to_right now also moves the ignore race/element defense bonuses (Ice Pick, Weed Killer, etc) [Skotlex] * Some fixes to the job_name functions (rearranging inside msg_athena.txt as well) [Skotlex] * Left card to right fix will now also apply to defense piercing effects (Ice Pick) [Skotlex] * Fixed char-converter being broken for a type mismatch [Foruken] 2005/12/15 * Fixed clone skills again. This time ground-based skills are working, and support skills have a re-cast delay of half the skill's actual effect. [Skotlex] * Fixed clone commands sometimes spawning the clone on a non-walkable tile (which in turn sends the clone to a random map location) [Skotlex] * Added debug information to the guild cache. Total number of guilds in the db will be printed now (as long as the save log is active) [Skotlex] * Updated SG_HATE to pick the specific class (Select a Monk, and the bonus is against monks only, not Champions/Acolytes/Baby Monks) [Skotlex] * Removed hardcoded table names in login_sql/login.c [Foruken] * Some cleaning regarding the job tree skill-raising restrictions code. [Skotlex] * Optimized/cleaned up the job_name function, job names are now acquired from msg_athena.txt. [Skotlex] * Fixed race defense bonus against Boss/Nonboss checking versus the target instead of the attacker (should fix Alice Card) [Skotlex] * Some cleaning in clif.c [Skotlex] 2005/12/14 * Fixed 'dead_branch_active' option. [Skotlex] * Optimized use of weather effects, or should I say, no use. Also re-added clif_clearweather to some of the weather effects, when they are turned off. Why those were removed are beyond me.. [Valaris] * Temporarily changed the walk speed during Charge Attack and Extremity Fist to simulate a faster 'zoom' to the target (somewhat untested yet) [Skotlex] * Corrected SL_HIGH so that the total of each stat is always 50... [Skotlex] * Optimized graffiti display packets (what was I thinking?) [Valaris] * Corrected a statement in guild.c (== to =) in nulling out the guild cache. [Valaris] * Implemented a mini cache for guilds/parties in the map server. Looking up the same guild/party twice or more should result in instant seek times until a different one is looked up. [Skotlex] * Fixed saving account variables [Komurka] * Fixed SL_KAIZEL not starting the proper effect. [Skotlex] * Merged Reddozen's work of SL_KAUPE [Skotlex] * Updated checkweight() script command to return false when the player has inventory full. [Skotlex] * Soullink check for SG_FUSION [Komurka] 2005/12/13 * Fixed @slaveclone not attacking enemies. [Skotlex] * Some more cleaning to the clone skills, proper support for Heal, Resurrection, Double Attack, Triple Blows. [Skotlex] * Updates/fixes/corrections to battle check target so that mobs with special AI can fight mobs without it even if the mob doesn't has a human master. Also updated it so that mobs with no special AI are all friends by default. [Skotlex] * Clone skill fixes, support/self skills are now triggering (never triggered before), adjusted some of the skill usage rates. [Skotlex] * Dyes will now work correctly on cloned or mob_avail class monsters. save_clothcolor must be enable in battle_athena.conf. [Valaris] * Added carts, falcons and pecos to clone and mob_avail class monster spawns. [Valaris] * Likely fixed the @spawn names issue. [Skotlex] * Fixed @*clone commands not resolving properly the target char. [Skotlex] * Implemented the SL_ROGUE bonus to potions. They heal +100% more rather than 50% (potions from ranking Alchemists, that is) [Skotlex] * Merged in Reddozen's work with SL_KAIZEL [Skotlex] * Added the check to prevent KA skills from being usable until you are Soul Linked. [Skotlex] * Enabled clif_parse_Taekwon (Why was taekwon parsed as clif_parse_Alchemist?) [Vicious] * Moved the base attack code into it's own function to properly implement the magnum break's elemental damage bonus (watch out for bugs as the code was proof-read, but that usually doesn't says quite enough when it comes to code). [Skotlex] * Merged in Reddozen's work for SL_WIZARD [Skotlex] * Updated clone command to allow attaching the clone to the invoking player as a slave. @clone creates a friendly clone that attacks mobs. @slaveclone makes a clone that follows the creator (it's a slave), @evilclone is the stock clone as a mob). Also fixed min/max damage of clones. [Skotlex] * Added one extra tile of range to melee mobs in mob_attack, should fix mobs not attacking when they are range+1 tile from you, yet they refuse to move in that final tile. [Skotlex] * Corrected mob ai not moving closer to player if there's a distance of 2 or less between them (which would do no good if the mob's range is just 1) [Skotlex] * Fixed SG_FRIEND - should work now [Komurka] * Realtered global_reg value size to 256. [Lance] * Adjusted pointers location for packets for new global_reg value (it's wrong + I adjusted the size) to 256 + 32 = 288 [Lance] * Improved variable scope for scripts to accept all string variables. [Lance] * Altered map, char and login server to correctly use global_reg [Lance] * do_sendrecv merges from Freya [Lance] = Requires recheck on packets again to see if I missed any pointer alterations = * Improved @evilclone to accept character IDs [Lance] * Corrected partywarp/guildwarp to correctly take into account nowarp/nowarpto mapflags. [Skotlex] * Added a few custom scripts due to high demand. [Lance] * Added monster museum. Adapted from Prometheus. [Lance] * Corrected OnTouch to use exname instead of name to prevent conflicts. [Lance] 2005/12/12 * added manner_system battle conf variable (now you can have PK server without manner system - which is unfinished ;/) [Komurka] - some corrections in SI_ data (night uses soullink effect) - changed global_reg value from int to char added two new functions (pc_readglobalreg_str and pc_setglobalreg_str) SG_FEEL now saves maps to global_reg I've 'marked' all changes that SHOULD be checked with '//komurka' - SG_FUSION hp penalty changed from 2% to 0.5% - SG_SUN_COMFORT now increase VIT DEF - implemented SG_FRIEND skill - this is the last SG skill - now it's a good time for bug reports :] * Updated the max number of ingredients of produce_db to 12. [Skotelx] * Updated clone code to also copy the skills from the source player. [Skotlex] * Added Reddozen's implementation of SL_SKE and SL_MONK (sp recovery, Combo Finisher splash damage, SP regen while in Fury) [Skotlex] * Some reorganization of the Star Gladiator map-based skills. [Skotlex] * Fixed @spawn/@monster atcommands 'freezing' server when used. [Skotlex] * Fixed ground-based skills having their range-check messed up... [Skotlex] * Corrected melee-ranged mobs failing the range check even if they were standing next to you. [Skotlex] * Added all duel-commands messages into msg_athena.conf. Commented out code of drawing PVP-circle in duel because it not hiding when player use hide. [LuzZza] * Removed @monster2, merged the code of atcommand_spawn/atcommand_monster as suggested by Flaviojs. [Skotlex] * Removed some unused entries in msg_athena.txt [Skotlex] * When there are unused stack sections (invoked functions and ignored return values) the unused stack section is free'd. This is still notified when the etc_log is active. [Skotlex] * Removed the TURBO code from socket.c as requested by MouseJstr. [Skotlex] - It was actually slower than the normal code. * Updated warp portal and script commands partywarp/guildwarp to take into consideration mapflag nowarp as restriction rather than noteleport. [Skotlex] * Applied dontBR's update to his configure script [Kayla] * Changed the bonus on Sonic blow.(It was giving 1500% instead of 1600%) [Vicious] * Updated gettimetick() to use flag 2 and return System's tick, thanks to Kyoki [Skotlex] * Removed the mismatch stack error message caused by scripts where the returning value of a function was ignored. [Skotlex] * Corrected the Spirit of Assassin damage bonus of Sonic Blows. [Skotlex] * Corrected BSS check versus undead, checking for partners on the Priest's exact left and right, and sending partner's SP to negative. [Skotlex] * Another Paladin's Gospel effect ends when you cast it (should fix Gospel in Gospel bugs). Also, now Gospel only blocks usage of items of type 0 (healing). [Skotlex] * Corrected berserk Pitcher displaying 0 heal. [Skotlex] * Added Close Confine's flee bonus. [Skotlex] * Corrected Slow Poison. Can be used when not poisoned, will not "pause" poison's timer. [Skotlex] * Implemented SG_FUSION skill [Komurka] Don't ask me why in newer exe U see flying ... Santa ... -.- * Updated the distance() function definition with one which uses a much better approximation [Skotlex] * Updated sql-files/ mob_db.sql & item_db.sql to latest. [Skotlex] * Added @autotrade/@at and @away/@aw messages into msg_athena.conf (you can customize them) [Lupus] * Updated default hardcoded GMlevel values of some @ATCommands according atcommand_athena.conf [Lupus] and removed doubles of some commands, thanks to Rideword 2005/12/11 * Corrected guild deletion in SQL (both from /breakguild and guild master character deletion). [Valaris] * Added @evilclone commands. Syntax is @evilclone , [Valaris] It will spawn an aggresive clone of the given player. By default it will use mob id ranges 9001-10000, this range is #defined in mob.h. * Fixed VS compile error in mob_clone_spawn. [Valaris] 2005/12/10 * Added core player cloning code. Just need to create some commands. [Valaris] * Redid the @help2 (char commands). [Kayla] * Added jobname retrieving script function getJobName. [Lance] 2005/12/09 * Changed default GM level for @setbattleflag to 99. [Valaris] * Implemented the SL_SUPERNOVICE bonus to wear all heagears/various weapons at high base levels. [Skotlex] * Implemented SL_ROGUE bonuses: can't be dispelled, Chase Walk's str bonus lasts 10x longer. [Skotlex] * OneHand Quicken now dispels aspd potion effects. [Skotlex] * Updated SL_STIN/SL_STUN to do miserable damage if the target's size is 'incorrect'. [Skotlex] * Updated @disguise so the max npc id you can use is 1000 (1001 is already the first mob, Scorpion) [Skotlex] * Fixed a possible infinite loop in pc_calc_skilltree when receiving additional skills when Soul Linked. [Skotlex] * Added the Taekwon bonus that gives you triple Max HP/SP when you are a top 10 ranker and have base level 90+ [Skotlex] * Added support for skill_db pl == -2. These skills don't take the element of the weapon, but will take the element of any enchantment elemental change (so the element used is neutral unless you are enchanted with Fire/Wind/etc) [Skotlex] * Coded in SL_STIN, SL_STUN and SL_SMA. [Skotlex] * Should have fixed the crash with raw_time in char/char.c [Skotlex] * Pressure can now be cast-break. [Skotlex] * Likely fixed the client crash when hating a class rather than mob. [Skotlex] * Removed @help2, note to self: do not commit at 4 am. Will redo later. [Kayla] * Added @help2. @help did not fit in the screen. @help2 currently contains just the char (#) commands. [Kayla] * MAPREGSQL disabled (experimental) in VC7. To enable, define MAPREGSQL in preprocessor. [Lance] 2005/12/08 * Changed default value of start_zeny to 0 to prevent packet exploits. Also is 0z on offical servers. [Kayla] * Fixed bug with objects (npcs, monsters, players, etc) not appearing when using @refresh. [Valaris] * Updated effects for food production thx to Poki#3 [Komurka] * SG_STAR_BLESS now gives 20%*skill lvl additional exp [Komurka] * Modified clif_blown to use the clif_slide packet instead of clif_fixpos, as Komurka tested it and it appears to be handled better by current clients. [Skotlex] * Added two new battle_athena.conf options: duel_allow_teleport (def: no) and duel_autoleave_when_die (def: yes) [LuzZza] * Small fix in allskill [Komurka] * Updated Gloria Domini to bypass battle_calc_damage (misc damage reductions) [Skotlex] * Fixed a typo in pid.c, thanks to akusarujin [celest] * Exploit fix in SG_FEEL [Komurka] * Updated TK_MISSION to pick a random mob in the same way a dead branch does. [Skotlex] * Corrected SG_DEVIL giving the ASPD bonus below level 50. Only works at max level... [Skotlex] * Some cleaning to pc_calc_skilltree. Also updated it so that if you don't use player_skillfree, you can't have ANY skill if you don't have NV_BASIC at 9 (only exception are quest skills). [Skotlex] * Implemented HT_POWER/Beast Strafing. [Skotlex] - The damage equation is unknown.. for now it's the same as Double Strafe except the skill modifier is +10%*str - Currently the Combo is triggered 100% of Double Strafes done on beast monsters. * Added Reddozen's work for Hunter's Beast bane spirit bonus. [Skotlex] * Corrected the drop delay for mobs when killed by magic to be 500ms (will only work if killed by a player) [Skotlex] * Updated SG skills (kRO Patch - 11/29/05) [Komurka] * Enabled a few maps needed for the new novice training grounds, sorry I forgot to [MasterOfMuppets] * Removed duplicate maps in maps_athena.conf. Thanks for the report Dr. Evil [Kayla] 2005/12/07 * Pressure will always pull-off now after it has began casting. [Skotlex] * Implemented Close Confine. [Skotlex] * Change all 0x20e packets (18->26; 22->30) [Komurka] Also added job_name(mob_id) in clif_hate_mob (but it crashes client when U try to use SG_HATE skill on player ><) * Fixed compile error in status.c. Check your work skot <3 [Kayla & MoM] * Updated socket.c by adding a lots error reporting for functions that previously were assumed to not fail. May help figure out what's going on with the win32 builds... [Skotlex] * Reviewed and cleaned up a bit the latest SG additions from Komurka. [Skotlex] - My skill desc says that SG_DEVIL does not makes you blind until you reach max job level, so I implemented that. Report if this is incorrect. - SG_*_WARM skills should be working from what I read there. * Modified a bit the TK_MISSION packet, GUESSING where the progress of the current mission should go within said packet... [Skotlex] * Implemented TK_MISSION. [Skotlex] * Added more SG skills (Comfort, Warmth, Demon, Knowledge) [Komurka] All of them should be checked by someone ^^;; - SG_xx_WARM for now only shows cool red effect :> There is more code but for now it doesn't work * Added new Geffen Field maps [Harbin] * Disabled Atcommand Nuke (It was commented, not disabled) [Harbin] * Added skip_teleport_lv1_menu option to Battle_Athena. Allows players to cast Teleport level 1 without menu. [Harbin] * Merged in Reddozen's current Soul Linker work. [Skotlex] - Berserk Pitcher should be working now. - Bard/Dancer walk bonus when dancing/singing while soul-linked. - Partial work on Twilight Pharmacy. - proper skill effect * Fixed One Hand quicken doing nothing. [Skotlex] * skill_get_name now returns "UNKNOWN_SKILL" instead of null (should fix some crashes when using it on skills with no defined name) [Skotlex] * When weapon_delay_attack is enabled, items should drop inmediately after mobs are killed rather than 500ms afterwards. [Skotlex] * Added Exception Handling plugin to be used for native Win32 builds [celest] - crashes will be logged in .stackdump along with file name and line numbers - To activate, enable 'exchndl' in plugin_athena.conf Public Service Message - Crash reports can be VERY VERY helpful, so please enable the plugins if you can ('exchndl' for Win32, 'sig' for cygwin and linux) and send in any reports you might get! We all want eA to be stable, ne? ^^ * Some compile error fixes for MinGW, FreeBSD and plugins [celest] * Updated Makefile to set platform defines for FreeBSD [celest] * Updated Makefile to auto-detect MinGW and include src/mysql [celest] * Debug logging flag for logging output messages (only works well with native Win32) :D (Not enabled by default) [Lance] * joshuali's new vcproj with debug mode correctly set up. [Lance] * Fixed compile errors for Valaris's commit on date.h [Lance] * Added updated vcproj for native VC8 win32 for date.h/c support. [Lance] * Removed extra returns in date.h. [Lance] * Probably fixed warnings in unzip.c [Lance] 2005/12/06 * Updated item 12132 for the Xmas suit effect in item_db.sql. [Valaris] * Implemented Xmas Suit: [Valaris] -Added status change state SC_XMAS, and added it to const.txt. -Cannot attack or use skills while in the Xmas state. -Will save if you logout. -"sc_start SC_XMAS,600000,0" added to item 12132 (using item will give you xmas suit for 10 minutes). -Added xmas_ignorepalette option to battle_athena.conf. * Fixed script error in Garm's Claw item causing an error. [Valaris] * Added a missing ; to Skotlex's Previous SG skill editions that caused compile errors. [Valaris] * Added JOB_GUNSLINGER(24), JOB_NINJA(25), and JOB_XMAS(26) to map.h enum list and const.txt. [Valaris] * Added SC_SCRESIST to const.txt. [Valaris] * Applied Komurka's Star Gladiator patch. [Skotlex] - The following skills are now working: SG_FEEL, SG_HATE, SG_SUN_ANGER, SG_MOON_ANGER, SG_STAR_ANGER, SG_SUN_BLESS, SG_MOON_BLESS, SG_STAR_BLESS - The designated maps cannot be stored currently (cannot save character string variables) and is pending on a script update to enable saving of said type of variables. * Added @away command. [LuzZza] * Mostly fixed intravision making everyone see hidden/cloacked characters. (the actual option value to see just the player's shadow is currently unknown) [Skotlex] * Updated Gospel [Skotlex] - It should clear all buffs/debuffs now. - Party-mates within range cannot use items. * Implemented the SL_BARDDANCER bonus that enables the caster to be buffed by their own song/dance/encore. [Skotlex] * Completed Sight Thrasher (the option value is still missing, though. Temporarily uses the one of Sight) [Skotlex] * Corrected possible exp exploits in jA's exp calc method. [Skotlex] * Corrected Spirit Skills showing up in all class trees. [Skotlex] * Invoking @reloadscript now also invokes the OnInit event after loading. [Skotlex] * Expanded Item Groups list from 20 to 32 item groups [Lupus] * Fixed healing experience bug. Now only healing another players gives experience. [Harbin] 2005/12/05 * Hopefully fixed gm_all_skill.... [Skotlex] * Modified a bit the player attack code to give an extra range cell when the target is moving. [Skotlex] * Added skip_teleport_lv1_menu battle_athena option. It give a possibility to disable (skip) Teleport Lv1 menu, that have only two lines `Random` and `Cancel`. Of course, by default this option have `no` (don't skip) value. [LuzZza] * Added FD_SETSIZE 4096 predefination to VC++ Project Files. Should fix 60 player limit bug with native compilations. [Harbin] * Fixed char crash (I hope) when checking for two parents + baby in a party with more than 3 characters, but from which only 3 were online at a time. [Skotlex] * Merged in Reddozen's work on SL_BARDDANCER and cleaned up a bit the Spirit Skills code when calculating the skill tree. [Skotlex] * Updated mob ai so that support/aggressive mobs can't 'see' a player until there's a direct line of sight between them. [Skotlex] * Updated monster_ai&1 so that when not set mob-chase type is Aegis-like (mobs will not change walk target tiles mid-walk) [Skotlex] * Added battle_athena.conf option mobs_level_up_exp_rate to set the extra exp rate a leveled up monsters gives. [Valaris] * Added a custom X-Mas quest *Sign Your Items* [Lupus] * Applied Harbin's patch to fix Arrow Shower + Traps. Someone test it out. [Skotlex] * Another fix to socket.c to enable TURBO mode to work on win32. [Skotlex] * Fixed the combo status not ending after using TK_TURNKICK [Skotlex] * Overflowed pointer fix in socket.c [Skotlex] * Added 'Einbech' into @go command (u have to type at least 5 letters) [Lupus] * More detailed error messages for missing '"'s in scripts. [Lance] 2005/12/04 * Removed mail server switch from battle_athena.conf and added full mail server configuration to inter_athena.conf. [Valaris] * Fixed too big VVS damage of TOP10 BS weapons [Lupus] 2005/12/03 * Fixed up TK Sprint (TK_RUN) skill: [Valaris] -Disabled movement during skill use. -Correct moves player server-side. -Stops without sp use if skill is used during running. -Server will not save status if player logs out. * Some cleaning of socket.c to see if TURBO will now work on Windows, it may also fix the select() problems on that platform as well. [Skotlex] * Fixex "gm_skill_all" crashing the server from generating huge packets (or so I hope) [Skotlex] 2005/12/02 * Gave the Spirit Status Change a custom effect for now. [Skotlex] * Merged in Reddozen's work for SL_HIGH (Spirit of Rebirth) [Skotlex] * The Bonus skills acquired from being Soul Linked should now show up in the skill tree. [Skotlex] * Merged Reddozen's work of One-Hand Quicken and Adrenaline Rush 2. [Skotlex] * Fixed Axe-Kick never triggering. [Skotlex] * Slaves walk once again. [Skotlex] * enable_items now also enables equipment stuff. [Skotlex] * The attack motion in packets for ground-based skills is now 0 (it may help somewhat with current firewall issues). [Skotlex] * Added char-server option "save_log", when disabled, the char server will stop printing info messages whenever something is loaded/saved. [Skotlex] * Disabled random-walking for slaves [Skotlex] * Added script commands enable_items/disable_items [Skotlex] * Likely fixed the mob-skill target type "master" [Skotlex] * Added target type "master" to the mobskill_db [Skotlex] * Modified NPC_RUN to allow the caster to run away from the target [Skotlex] * Implemented SL_SAGE (Soul Linker Sage buff for auto-cast bolts) [Skotlex] * Updated char-sql guild saving so that instead of saving ALL guilds when the time comes, the save interval is splitted on time-slots (based on guild count in memory) and a guild is saved per time-slot (just like the map server saves characters). [Skotlex] * Fixed client crashes with using baby and advanced player classes as pets. [Valaris] * Added missing ban_hack_trade option to battle_athena.conf. [Valaris] * Hopefully fixed Counter Kick. [Skotlex] * Uncommented and corrected the Soul Linker Monk buff (SP cost reduction for monk combos) [Skotlex] * Added a check in skills so that skills that are used on yourself, but had it's target auto-selected cannot be used on non-enemies if it's nk is different from 1 (1 = No damage skill) [Skotlex] * Various cleanups to the char-sql server to prevent corner-case crashes from queries that return no rows. [Skotlex] * Massive Taekwon Boy skills related code cleanup. [Skotlex] - Flying Side kick and Turn Kick should be fully working now, too. * Cleaned up and reorganized the SC_ data listing. Added sc's for food related bonuses: SC_HITFood, SC_FLEEFood, SC_BAtkFood, SC_WAtkFood, SC_MAtkFood. [Skotlex] - Some of the saved sc data will be wrong, so wipe the table/file if you want to play it safe. * Some corrects in duel code. [LuzZza] * Sonic Blow and Shield Boomerang's after cast delay is now properly adjusted by the Soul Link skills. [Skotlex] * Party even share will be now broken after a base level reset. [Skotlex] * Merged in Reddozen's Soul Linker current skills work. [Skotlex] * Added countitem2(itemID,....) script function. [Lupus] * Added axtoi script function that converts hex strings to integers. [Lance] * Fixed incorrect time (that leads to crashes) in login server. [Lance] 2005/12/01 * Moved KN_CHARGEATK code to merge it with Extremity Fist. Skill damage modifier is currently set to +15% per cell (need actual value here) [Skotlex] * Fixed client crash when logging in with Baby Knights and Crusaders riding Pecos. [Valaris] * Implemented Ki Explosion. [Skotlex] * Fixed client crashes with using baby and advanced player classes as monsters. [Valaris] Make sure to use Item ID for weapons and shields in mob_avail.txt for player monsters and not View ID. Updated Valaris and MC Cameri mobs in item_avail.txt to use Item IDs. * Fixed cutting Castle Name (was 14 instead of 24) [Lupus] * Corrected Grimtooth counting a short-range skill when it's actually ranged. [Skotlex] * Corrected Venom Splasher's splash range, and the splash damage is now divided by number of targets (sort of, skill % dmg is adjusted according number of targets) [Skotlex] * Tarot Card of Fate won't break equipment now if equip_skill_break_rate is 0. [Skotlex] * Improvements and optimizations to the online db management in the char txt/sql servers. [Skotlex] * Updated the guild cache (char sql) to have it load/unload characters whenever they are updated in the char online_db (previously they were only updated on normal char-select/char-quit when there were more cases where a char is set online/offline) [Skotlex] * Now when the guild is not found in the cache it will be loaded from the sql db first before failing. [Skotlex] * Fixed equip_skill_break_rate equation being messed up for Acid Demonstration. [Skotlex] * Fixed Aura Blade adding damage to Spiral Pierce (it shouldn't) [Skotlex] * Script function getnameditem now sets flag 254 (created) instead of 255 (forged) [Lupus] To prevent ADDITIONAL Blacksmith FAME TOP10 bonuses, applied to signed but not forged weapons e.g. You have a custom quest for rare weapons. You tag items with players name (using getnameditem command). if a TOP10 BS get an Infiltrator.. then it used to give extra atk bonus 8) 2005/11/30 * Updated item_db.sql to latest. [Skotlex] * Updated mob_db.sql to latest. [Skotlex] * Updated Gospel to force the removal of the ground-effect when the status change ends. [Skotlex] * Made Snatch/Intimidate work on Guild maps (I have read around this is how it is) [Skotlex] * Added the auction maps to maps_athena.conf [MasterOfMuppets] * When players are hit while moving, they should now move one last cell in the same direction they were walking when interrupted. [Skotlex] * Walk delay won't be applied now unless the attack deals damage... [Skotlex] * Major reorganization of player variables and bonuses. If something broke, report it up. Otherwise, struct map_session_data should look quite a bit more clean now. [Skotlex] * Fixed duel bug when you can't cast some skills on yourself. [LuzZza] * Fixed (I think) pets losing the "rename flag" when you sent them back to egg. [Skotlex] * Added a index check in the equip packet, should fix crashes from invalid packets. [Skotlex] * Fixed a horrible bug that was making the walk delay not work for sure x.x [Skotlex] 2005/11/29 * Fixed race exp bonuses. [Skotlex] * Fixed ## account variable saving disconnecting the char-login servers. [Skotlex] * Updated the way multi-hit skills add overrefine/star crumb/spirit sphere damage so that the total bonus is multiplied by the total number of this. [Skotlex] * Fixed the config variables being "lost" on startup. [Skotlex] * Fixed Restore requiring Regeneration lv2 [Skotlex] * Fixed the spirit sphere bonus not applying to Throw Spirit Sphere. [Skotlex] * Rewrote and cleaned up duel code. Formed independent duel_xxx functions. I suggest to place this functions in duel.c/duel.h. New features: [LuzZza] - Now when you in duel, you can't attack anything out of your duel (mobs, other players etc...); - Now you can't take part in duel more often than it set in battle_athena. Default delay is 60 minutes. - New battle_athena.conf options: duel_allow_pvp - allow/disallow duel on pvp-maps; duel_allow_gvg - allow/disallow duel on gvg-maps; duel_time_interval - delay between using duel in minutes. * Updated damage formula for Spiral Pierce. [Skotlex] * Fixed speed change being lost when speed is increased/decreased while walking with Free-cast. [Skotlex] * Fixed pets being renameable after turning them back into eggs. [Skotlex] * Reverted the guild data position in the mob/npc packets, should restore the emblems in flags. [Skotlex] * Corrected battle_check_target Guild checks returning true for non-guild, party'ed characters and viceversa. [Skotlex] 2005/11/28 * Added dontBR's experimental configure script. It's still in alpha stage, so use with caution! [Skotlex] * Fixed a pair of exp exploits possible with to Rich Man Kim and race-add-exp card bonuses. [Skotlex] * Updated behaviour of skillrange_from_weapon. If set, those skills with negative range use the weapon's range. If not set, then the skill range used is the absolute value of the range specified in the skill_db. [Skotlex] * Small cleanup of the color broadcast packet using data provided by Master of Muppets. It should hopefully fix the font-size on said colored messages. [Skotlex] * Fixed the setting of the guild id and guild emblem in packets 0x7b and 0x78 for mobs/npcs (this is assuming the position is correct when filling these same packets for players) [Skotlex] * Added battle_config option skillrange_from_weapon which, when set, allows weapon based, target-selected, offensive skills to take the equipped weapon's range instead of the range defined in the skill_db. [Skotlex] * WARNING/ACHTUNG! Update all your NPCs ASAP. Massive NPC fix's out. [Lupus] * Updated monster_ai&8 so that mobs scatter as soon as they lose their target. Use this setting for an effective counter measure to Grimtooth mass-mob training. [Skotlex] * Added pc_damage_walk_delay_rate to separate the walk delay adjustment of players from that of mobs. The adjustment for players is 20% while for mobs is 100%, pending further adjustments. [Skotlex] * Added the weapon upgrade damage bonus of Spiral Pierce [Skotlex] * Removed the mob_stop_walking code from mob_damage as it should be invoked on battle_walkdelay (the mob walk delay issue will likely need it's own config option) [Skotlex] * Added joshuali's new Visual Studio files. [Lance] * Novice Warp Portal fixes from jAthena. [Lance] * Final warning elimination in plugins.c (most of them are gone with warning level set to 1). [Lance] * Fixed typo in msg_athena.conf and 'users with autoloot turned on will not have their rare drops announced.'. Thanks to Kaseki. * Mob should stop walking when hit if not enduring. Thanks to Playtester. [Lance] * Included pcre.dll and libmysql.dll from joshuali. [Lance] * Eliminated Level 3 warnings. Setting compile warnings to Level 3. (Level 4 just kills eAthena XD) [Lance] 2005/11/27 * Fixed an overflow pointer bug in the gvg eliminate timer. [Skotlex] * Updated the damage code if Spiral Pierce, Shield Chain and Shield boomerang to be closer to official. [Skotlex] * Fixed a crash when setting all chars offline in the char-sql server. Also fixed that delete_timer mismatch on shutdown [Skotlex] * Autospells now won't trigger if the range between the source and the target is not satisfied. [Skotlex] 2005/11/26 * Added bonus2 bAddSkillBlown for adding a custom knockback value to a skill. Note that this knockback bonus is ADDED to whatever the default knockback of the skill is. [Skotlex] * Fixed Soul Linker skills showing up on the tree for leveling up. [Skotlex] * Probably fixed the crash in inter_guild_CharOffline [Skotlex] * Modified the skill get range routine to correctly account for the attack range and the AC_VULTURE range bonus where needed. [Skotlex] * Fixed alchemists Fame Points bug: It were giving 1 fame point [Lupus] on making 4 Condensed Potions in row, instead of 3, etc. Now tested ^_- * Some restructuring and cleaning up in map loading to make it easier for future plans (like removing Grfio) [celest] - split map loading into separate sources properly - added map server will display a list of enabled map sources on startup - added maps will be auto-imported into the map cache if it's loaded with AFM, AF2, or any other source The server looks for maps in this descending order: the map cache, AFM maps, AF2 maps, and finally GAT files from the GRF (slowest); so, if you enable map caching it should be a liiiittle bit faster then before ^^ 2005/11/25 * Uploaded fixes to int_guild, tested and working safely. [Kevin] * Added @showzeny @ command. [Skotlex] * Some code cleanup to make AutoBerserk work the way it was intended to (skill toggles "auto-berserk" state on/off, if on, you automatically get Provoked when under 25%HP) [Skotlex] * Fixed Auto-Berserk auto-ending after a minute. [Skotlex] * Added a fix to mob skills to prevent them from being checked too frequently during battle (which was sort of bumping up their rate to double or more from what the skill db would state) [Skotlex] * Added cleaning up the fifo before sending the guild information (since the packet is big, the fifo should be cleared to avoid overflow problems) [Skotlex] * Added monster_ai&8, when set monsters stop walking as soon as they lose their current target [Skotlex] * Reflect Sword again reflects damage versus players. [Skotlex] * Corrections to the skill code so only Heaven's Drive may damage traps. [Skotlex] * Reverted the mob random walk delay after unlocking a target to 3~6 secs. [Skotlex] * Added pow, sqrt and distance to scripting commands. [Lance] * Removed players with 0 Fame Points from Blacksmith/Alchem/Taekwon TOP10 lists [Lupus] * Should fix night glowing bug. [Lance] * Added setd and getd variable retrieving and setting with dynamic names. [Lance] * Added petstat command as requested by Dubby. [Lance] 2005/11/24 * Fixed a small bug in the guild search by name routine. Should fix the crash on new guild creation. [Skotlex] * Added debug information in case the guild isn't found in the cache when it should be there. This should help fix any problems the guild cache might have (eg: for some function that may take effect on a guild which has no members online) [Skotlex] * Finished cleaning up and merging the guild cache withthe guild timers behaviour. It should be mostly safe to update now. [Skotlex] * Reverted the sql save behaviour. [Skotlex] - Now guilds timers and cache are both into effect, this requires a bit more of cleaning to be considered done. * Various things I made but already forgot xD [DracoRPG] * Fixed and updated damage bonus for forged weapons: VVVS is +40 (was previously +50 for the right hand...) and "famous maker bonus" gives a no-miss +10 dmg, same as 2 additional Star Crumbs. [DracoRPG] * Added or updated several Taekwon skills [DracoRPG] - Jump Kick uses clif_slide to the target's exact pos , waiting for capture/video - Taekwon ranking is now supported by the fame system, but there's no way to gain points atm (Taekwon Mission has no effect), infinite kick combo should be OK - 4 basic kicks updated, you now stop attacking when a stance triggers, and have 2 seconds to hit the button before attacking again - Run uses SC_SPORT to increase your STR and affect the way Break Fall works - Break Fall dodges ranged magic/weapon attacks, as well as melee weapon ones when SC_SPORT is active * Made Sword Reject / Counter Instinct reflect damage only against monsters (not 100% sure about it, but let's say 90%... iRO site says it, although it isn't the best source ever) [DracoRPG] * Made Spiral Pierce use SC_STOP instead of setting canwalk_tick, some other such things need to be reviewed [DracoRPG] * Fixed Pneuma. [Skotlex] * Fixed dead mobs reappearing on the map. [Skotlex] * Cleaned up the duel code in battle_check_target. [Skotlex] * Added config option summons_inherit_effects, defaults to yes, check battle_athena.conf for further details. [Skotlex] * Updated duel [LuzZza] - Now "@duel " may be used for indication max players limit of duel. - Now "@duel " creating duel for two players and automatically send invitation to Nick. * Added a new script function: getequipcardid(equipSlot,CardSlot) [Lupus] Returns Card ID or just a value from your EQUIPPED item Useful to check equipped items PROPERTY, STRONG value, Author ID, etc Check npc\sample\getequipcardid.txt and read script.c comment ^_- 2005/11/23 * Fixed the crash on guild creation in new guild cache. [Kevin] * Implemented duel organizing commands: @duel, @invite, @accept, @reject, @leave. [LuzZza] * Made the walk-delay a timer, so that it triggers after the actual attack motion of the src. [Skotlex] * Added back the combo damage delay config, now renamed to multihit_delay, and set to the default of 230ms it had before. [Skotlex] * Added displaying file which caused an error on incorrect mob lines. [Skotlex] * Small memory corrections to sql castle saving/loading, mostly Lance's work. [Skotlex] * Updated the walk delay routine to not invoke stop-walking when character is not walking (fixes the case in which the packet is sent while sitting, which causes a 'standing' sprite even if the char is sitting). [Skotlex] 2005/11/22 * Implemented a guild cache in char sql, saves all online guilds every 5 minutes. [Kevin] * More grammar fixes [Kayla] * Added 1-tile of range grace in skill_use_id and skill_use_pos since that's how it is on Aegis servers. [Skotlex] * Updated the skill info packets to deliver the skill names as expected by the client. [Skotlex] * Updated mob ai to enable changing targets while attacking ONLY if the attacker is within melee range (Aegis AI). monster_ai&4 can be used to override this and allow mobs to change target and pursue ranged attackers. [Skotlex] * Updated the config comments for the ip-related settings. Thanks to akusarujin for the update. [Skotlex] * Added rates to at_command.conf, set it's default to GM lv1 [Skotlex] * Removed the icon from Fire Break's fire-elemental bonus. [Skotlex] * Updated the walkdelay function to only be invoked if the attack did damage. [Skotlex] * Some more fixes to the english in ShowInfo()'s [Kayla] * Cleaned out the SVN a bit [Kayla] 2005/11/21 * Removed "(now unlimited loop start!)" from char-sql in an info line...wtf xD..[Kayla] * Mob AI update: updated the conditions used to specify if a mob can change targets as per the forum provided information (by Komurka and Kyoki). Mode 512 (MD_CHANGETARGET) no longer does anything. [Skotlex] * Mobs that assist now link nearby mobs when they attack. [Skotlex] * Made the damage delay be applied after knockback rather than before (magical/misc instant effect attacks are still applied before the knockback) [Skotlex] * The damage delay timer now stores the distance between source/target, if this distance is increased by 2 or more, the damage delay fails and takes no effect (if the '2' needs to be made higher, do point it out. It shouldn't be much of a problem since you aren't supposed to be able to walk from the damage delay anyway). [Skotlex] * Changed the way damage delay works. It is no longer applied on mob_damage/pc_damage, but instead is invoked from clif_damage (or clif_skill_damage), which means the "can't walk" delay is sync'ed with the damage packets when they are sent. This should fix most delay-damage 'stun-lock' related issues. [Skotlex] 2005/11/20 * Mobs now can't move while casting. [Skotlex] * Updated mob_db.txt and mob_db.sql with the most recent data from Kyoki. [Skotlex] * Corrected the mob_db by adding the canmove/canattack bits to pretty much all mobs that needed them. [Skotlex] * Some fixes to the confusion code. [Skotlex] * Crash-fix in status_change_start [Skotlex] * Implemented confusion as it should be (not tested yet!) [Skotlex] * Updated run_script to backup the current script of a player and restore it if the current script ends inmediately. This should fix losing the script info if status_calc_pc is invoked while running a script. [Skotlex] * Fixed a memory leak in the guild eliminate timer. [Skotlex] * Removed the extra tile of range mobs have when walking. [Skotlex] * Added mob reloading to battleconfig reload @ command. [Skotlex] * Updated mob_db.sql with the new modes by Kyoki. [Skotlex] 2005/11/19 * Made characters stop walking when inflicted by SC_STOP, may fix GrimTooth's stop effect not seeming to take effect. [Skotlex] * Made the pk_min_level config not take effect in WoE/GvG grounds. [Skotlex] * Fixed showing falcon when player is hide. [LuzZza] * Updated mob_db.sql and item_db.sql to current [Skotlex] * Updated the skill db step guessing code to allow for negative ranges (Now spear boomerang should progressively get longer range with higher levels) [Skotlex] * Fixed Tarot Card, the card that gets two random effects can't retrigger itself, and it causes STOP instead of Stun where appropiate. [Skotlex] * Updated devotion to only work on damage attacks that have a source (will prevent it from "blocking" COMA, which is what caused the crash). [Skotlex] * Fixed not always showing CRIT attacks, thanks to Irmin [Lupus] 2005/11/18 * Updated mob_ai so aggressive mobs change target when chasing, and change-target mobs do so when attacking. [Skotlex] * Fixed weapon forging showing success even when it fails. [Skotlex] * Some cleaning up of @time, may fix the weird time displays. [Skotlex] * Modified mob_ai so hyper-active mobs change target if they are cast-sensors even if attacking (angry mode). They will also change target if attacked while in angry/follow mode regardless of their change-target mode. [Skotlex] * Moved the night-inducing code from "map loaded ack" to "spawn pc", should fix characters going ultra-blue after stuff like fly-wings. [Skotlex] * Delayed the mob emotion when doing skills so that it gets executed AFTER the skill is successfully performed. [Skotlex] * Implemented PR_REDEMPTIO. Is the penalty for both base and job exp? That's how it is currently. And if the map has the nopenalty flag,there's no exp penalty. Awaiting further input on the matter (altough, do note the skill isn't tested either) [Skotlex] * Fixed three memory issues (char txt shutdown, npc reloading, ore discovery logs) which were pointed out by End of Exam. [Skotlex] * Added support for hyper-active mobs (MD_CHANGECHASE = 0x400), these mobs will change to the closest target while chasing/following other players. Needs be added to the mob_db. [Skotlex] * Added support for hyper-aggressive mobs (MD_BERSERK = 0x800), these mobs change their skill state to angry/follow instead of attack/chase when they select/change target (except if they changed target because the new target attacked them). Needs be added to the mob_db, for now all aggressive mobs are considered hyper as well. [Skotlex] * Updated mob mode cast-sensor (MD_CASTSENSOR = 0x010), mobs that are Aggressive can also change target if they are chasing/following a player when someone else casts a skill on them. [Skotlex] * Fixed Dark Blessing. [Skotlex] * Changed the default battle_delay_damage value from no to yes. [Skotlex] * Added check to prevent reinitiating SC_GOSPEL on a character that already has GOSPEL and val4 == BCT_SELF, may fix multiple Gospels being placed on the ground. [Skotlex] 2005/11/17 * Altered behaviour of NPC_EMOTION/NPC_EMOTION_ON as requested by Komurka. [Skotlex] - val[0] (the first one) is the emotion the mob does. If val[1] is different from 0, then the mob's mode is changed to THIS value. If val[2] is different from zero, it'll add/remove a mode based on skill used (EMOTION_ON adds mode, EMOTION removes it), both can stack [Skotlex] * Fixed for sure the Makefile... [Skotlex] * Modified Wedding effects. That is, changing base to 22 does NOT displays wedding outfit anymore. To display the wedding outfits, you have to start SC_WEDDING instead. Tux/Wedding dress scripts likely need being updated. [Skotlex] * Added battle option disp_zeny, will display on console how much zeny you earned (be it from selling, trading, mobs, etc, as long as you "earned" zeny) [Skotlex] * Updated status_calc_pc to prevent infinite recursion loops. [Skotlex] * Applied End of Exam's suggested signedness fixes to npc.c [Skotlex] * Updated sting lib, to avoid SQL troubles [Lupus] * Fixed moonlit not properly checking for nearby walls. [Skotlex] * Added a recursion protection system to status_calc_pc which should avoid exploits derived from recursively calling status_calc_pc which certain equipment scripts could trigger. Thanks to End of Exam for pointing it out. [Skotlex] * Applied Celest's patch which should help compiling eA under mingwin. [Skotlex] 2005/11/16 * Fixed AFM map loading (something was missing there which was gonna make the map server crash for sure later on) [Skotlex] * Some corrections to the mob states, linked/cast-sensitive mobs engage in attach/chase modes, not angry/follow (which seem reserved entirely for aggressive mobs) [Skotlex] * Cleaned up and corrected target types MSS_AROUND->MSS_AROUND8, also added and documented them in mob_skill_db.txt [Skotlex] * Probably corrected whispers to GMs. Thanks to Slennox for pointing it out. [Skotlex] * Modified mob-skill states to use Aegis-based information. Modes are MSS_IDLE, MSS_WALK, MSS_LOOT, MSS_DEAD, MSS_BERSERK, MSS_ANGRY, MSS_RUSH and MSS_FOLLOW. Mob skill db is unaltered other than for the fact it now supports "angry" and "follow" states. [Skotlex] * Cleanup of how knockback routines are invoked. [Skotlex] * Added MOB_LAZYSKILLPERC to mob.c, determines probability of a mob doing a skill when there are no players nearby (but there has to be players in the same map for it to trigger). Currently set to 10/1000 chance. [Skotlex] * battle_check_target update. Rewrote the party/guild checks, this should hopefully fix any problems left with pvp/gvg and mapflags not working properly. [Skotlex] * Fixed playerattached() returning char id instead of account id. [Skotlex] * Added battle option party_even_share_bonus to enable use of Valaris's evn share experience bonus equation rather than the official one. [Skotlex] * Corrected @jump not displaying the actual coords you jumped to. Thanks to kitty74x9 for noticing (and fixing) it out. [Skotlex] 2005/11/15 * Fixed multi-hitting skills not increasing the "can-walk" delay accordingly. [Skotlex] * Modified way to updating hp/position of party members. [LuzZza] * Added battle config option "aura_lv", specifies which level characters have to be for the server to report their level as "max_lv" (which normally is used to enable the aura). See battle_athena.conf for more details. It may not work for your self, but only for other characters (this is, afterall, untested yet) [Skotlex] * Implemented High Jump (works 100%) and Fighting Chant (untested but should work). [DracoRPG] * Various cleanups and typo fixes here and there. [DracoRPG] * Corrected the upkeep SP cost of Moonlight Petals. [Skotlex] * Modified Magnum Break's fire bonus to be 20% ADDITIONAL fire damage of your total damage previous to the elemental modifier. [Skotlex] * Modified Fatal Blow's stun chance to kRO's equation (+5% stun chance per bash skill level over 5) [Skotlex] * Corrected Sharpshooting's damage equation to +50%*skill_lv [Skotlex] * Updated Magnum Break's bonus from 10% to 20% fire elemental. [Skotlex] * Updated Arrow Shower to be a ground based skill (untested yet) [Skotlex] * Pretty much rewrote how Moonlight Petals work, it should be working mostly right now. [Skotlex] * Splitted gat map information into gat and cell info. gat info is permanent map data (walls, ground, etc) while cell is temp map info (basilica, pneuma, etc). Modified Pneuma and Moonlight Petals to work based on map cells. [Skotlex] 2005/11/14 * New Visual Studio projects, compiling works, need zlib.dll for txt server. [Kevin] * Longing for Freedom can't be used during Moonlight Petals now. [Skotlex] * Corrected True Sight's critical bonus (from +0.1 cri per level to +1 cri per level) [Skotlex] * Made coma a status effect. SC_COMA. Sets HP/SP to 1. Bosses/Emperium are inmune to it. [Skotlex] * Fixed null pointer crash in battle_damage. [Skotlex] * Increased max account variables to 32. [Skotlex] * Pressure/Gloria Domini now isn't instant-cancelled by status effects, and bypasses the Devotion/Sacrifice check. [Skotlex] * Added handling of the /pk packet, even thought it just shows an empty listing for now. [Skotlex] * Applied zBuffer's suggested fix to prevent S. Novices from getting mental Strength at 100% exp. [Skotlex] * Fixed Friends List not able to add more than 20 friends (current clients support up to 40) [Lupus] thanks to CAHTEXNIK for pointing it out 8) 2005/11/12 * Probably fixed the name of freshly captured pet eggs. [Skotlex] * Changes Win32 to not require svnversion.h, but instead tries to peek in .svn\entries to check for svn version. If the file doesn't exist it'll display "Unknown" though, which I guess isn't a good thing ^^; [celest] * Removed the option to load zlib as a plugin for Win32 since it should be linked at compile time [celest] * Added zlib and libmysql .lib files for compiling in Visual Studio [celest] Note: The project files on SVN don't have them yet, you'll need to include them yourself for now * Fixed a compile error in Visual Studio [celest] * Readded a missing zlib file needed by Win32, sorry ^^; [celest] 2005/11/11 * New readme content/layout (IE warning: IE hates new readme) [Evera] * Imported use of the refine weapon packets from jA. [Skotlex] * Removed SC_MODE, now NPC_EMOTION and NPC_EMOTION_ON can change a mob's mode permanently (until their death, that is), and it won't work on player summoned mobs. As before, val1 is the emotion value, val2 is the mode to add/remove. Val3 is now ignored (used to be duration) [Skotlex] (no, no need to wipe SC data this time around either) * Cleaned up sql-files to use TYPE rather than ENGINE as TYPE is supported by older MySQL versions and not quite deprecated yet. [Skotlex] * Modified the party even share exp bonus to be +10% per extra party member as official sources state. [Skotlex] * Organized the clif_devotion packet, and added clif_marionette as per jA's implementation. [Skotlex] * Added db_path to map_athena.conf, used to specify an alternate directory to locate the db/ files. Defaults to "db", obviously. [Skotlex] * Removed SC_FALCON and SC_RIDING, the status icons are directly managed through the change of the character's option now. The actual defines were not removed to avoid shifting all the SC_ values again (no need to wipe sc data) [Skotlex] * Added additional debug information to battle_attr_fix until the cause of those errors are found and resolved. [Skotlex] * Fixed win32 compiles always reporting "unable to set socket to non-blocking mode", together with other minor win32 fixes. [Skotlex] 2005/11/10 * Fixed char-sql cart loading. [Skotlex] * Updated the function that specifies the cards to support more than four slots. [Skotlex] - Since the packets are fixed sized the client can never receive data of more than four cards, therefore if the client was compiled with MAX_SLOTS above 4, a random subset of cards will be sent each time the item data is sent (eg: if the item has 6 slots, it may randomly choose to send cards 1->4, 2->5, or 3->6). * Removed the OnAgitInit call when the map connects to char server. Fixes double guardian spawn. [Skotlex] * Fixed the sql query strings that would appear "incomplete" under certain *nix systems. [Skotlex] * Applied zBuffer's patches to correct memory leaks in the PCRE module (regular expression support for npcs) and prevent server crashing when scripts divide (or do mod %) by zero. [Skotlex 2005/11/09 * Fixed Ankle Snare and Spider Web not being cleared when the trapped target dies. [Skotlex] * Fixed the range flag being incorrectly set in BF_MISC skill attacks. [Skotlex] * Corrected Venom Knife using Level1 always for the poisoning chance rather than learned Envenom's level. [Skotlex] * Fixed the crash on shutdown if PCRE support was enabled. [Skotlex] * Fixed possible item duping while vending, thanks to End of Exam for pointing it out. [Skotlex] * Fixed the blue aura of Night effect. Thanks to zBuffer [Skotlex] * Fixed mobs moving one tile when hit even if they can't move (this is what broke Ankle Snare) [Skotlex] * Fixed night/day implementation (which broke due to the addition of SI_ constants). [Skotlex] * Cleaned up the SI_ constants to have defined only those which actually display something on the client. [Skotlex] * Fixed a bug which caused a captured pet's name to be displayed as beloved even though it was just captured. [Skotlex] * Added temp skill quests for all complete 2nd Class Quest Skills [Lupus] 2005/11/08 * Updated the documentation on the announce script commands. [Skotlex] * Removed the global color message support as there's now a way to craft custom colored announces. [Skotlex] * Probably fixed mapannounce. [Skotlex] * Implemented SI_ constants to specify the icon number for different SC_ changes, idea adopted from jAthena. All SC_ data was reorganized and several checks are now in place. It is likely all saved sc_data is wrong after this update due to the numbers changing places. It won't cause any glue-boots.. but the wrong status changes will be loaded the first time anyway, so it may be a good idea to wipe that file/table for this update. [Skotlex] * Added mob boss inmunity to status changes: poison, curse, deadly poison. [Skotlex] * Now when the mob starts casting a skill and stops walking, a packet will be sent to update the mob position on the clients. [Skotlex] * Fixed a bug in mob_stop_walking which may fix stun-lock. [Skotlex] * Fixed not showing named/carded items in Vending [Lupus] (when you drag'n'drop them from your cart into your shop list) 2005/11/07 * Expanded script commands announce/mapannounce/mapareaannounce to take an additional parameter to define the color. This uses the new packet 0x1c3 to send the broadcast, and even though the packet is not fully understood yet, it should be at the point where it can be used. [Skotlex] - eg: "announce "hello world", bc_map, 0xFFFF00;" * Cleaned up and optimized the way card data is set in packets. Should correct most, if not all, pet-egg related issues. [Skotlex] * Removed combo_damage_delay and added damage_walk_delay_rate. Now the total delay during which you can't move is a percent of the normal damage delay rate adjusted by number of hits and this rate. Defaults to 50% for now. [Skotlex] * Removed the random damage delay value from status_get_dmotion as it is not really helping the walk-stun-lock. [Skotlex] * Made Gravitation ignore target's cards. [Skotlex] * Updated readme with new layout [Evera] * Updated bAddMonsterDropItem bonuses to work with cards: Mimic Card, Mystcase Card where bonus_item_rate = base_rate * (killed_mob_level/10) + 1 So if 2nd argument is negative, then it's 'rate' Now, if you kill Porings, u'd have OBB/GIFT BOX drops with 0.01% chance and if u kill Leaf Cats then u'd have them with 0.05% chance Max chance is 0.1% (when u kill MVPs with level > 94) [Lupus] 2005/11/06 * Cleaned up a bit the warp portal code. [Skotlex] * Added a timer to invoke the OnAgitInit event 10 seconds after the char/map servers are connected. Scripts should now carefully use OnInit to load the castle data, and OnAgitInit to check for castle owners, mobs, WoE, etc. [Skotlex] * Reverted the damage delay equation to 800 -4*agi, which is the correct data from packets examined. [Skotlex] * Slow motion Fix: Reverted weight packet, thanks to Momoko [Lupus] 2005/11/05 * Fixes on sending to client status of char (guild, position, etc). [LuzZza] * Updated backsliding to work as it should. [Skotlex] * Added back the GPL licence on the root directory (why was this removed?) [Skotlex] * Fixed knock-back packets, thanks to Vicious for collecting the packet samples. [Skotlex] * Fixed pretty much all ground skills not working when you "walked into them" (they were fine if casted on top of you, though) [Skotlex] * Fixed not working ZENY LOG. You can use logging filter as well. [Lupus] - Only SQL logs available. - Logs only Vending, Trade, Shops yet - Don't forget to update your logs SQL DB and log_athena.conf * Added previously removed (by an accident) "MVP Prize item log" into pick_log [Lupus] 2005/11/04 * Added support for new quest skills to @allskills/@skillall. Thanks again to blackhole89 for pointing that out! [Kayla] * Fixed various occurencies of assuming Guild Skills being >= ID 10000 rather than 500