Date Added 06/02 * Added GM chat kick protections, thanks to Valaris [massdriller] * Added Password protection chat rooms access to gms, thanks to Valaris [massdriller] * Fixed a couple of things in map.c, thanks to Valaris [massdriller] * Storages now saves upon closing, thanks to Valaris [massdriller] * exp share and added zeny share/party bonus exp thanks to Valaris [massdriller] 06/01 * Fixed Divest Shield and Divest All not able to strip shields [DracoRPG] * Changed the default max_hitrate to 100% as specified in rodatazone [Skotlex] * Removed the console messages printed when the script command getmapxy is invoked [Skotlex] * Fixed non-droppable items blocking the client from further droping other items [Skotlex] * Changed the default of mob_remove_delay to 5 mins [Skotlex] * Changed the minimum mob_remove_delay to 15 secs since mobs with instant respawn actually take 5~10 secs to respawn [Skotlex] * Fixed again disp_hpmeter, it looks like this time it works properly. [Skotlex] * Added Esca's fixes to make eA properly compile under Sun-OS [Skotlex] * Tested and fixed script function getnameditem [Skotlex] Now you can use getnameditem(item,char) to get inscribed equipment (only works with what you can equip, arrows excluded). The item description can be the item id or the item name, and the character can as well be the character id or character name. Function returns 1 if successful and the character who's name is to be inscribed HAS to be online. * Changed the way dynamic mobs are removed. Now all mobs have are tagged as either cached/uncached, and only those cached are removed [Skotlex] Mob-Slaves are the only non-cached enemies that are also tagged as cached. * Fixed a delete_timer mismatch in pet.c [Skotlex] * Fixed some compile time things in older versions of gcc. [Kevin] * Removed the clif message when you can't drop items [Skotlex] Apparently this message breaks the clients and prevents further drops of items? Might need further testing. * Changed AspdRate and SpeedRate bonuses so they can stack [DracoRPG] * Added script function getnameditem [Skotlex] syntax: getnameditem itemid, inscribed char's name Needed at least for wedding scripts. Only works on equippable items, returns 1 on success, always makes only 1 item. (it should also be able to use char's id or item's name instead) Script function proof-read but not yet tested, so it might have a bug or two, use at your own risk for now. * Fixed dynamic mobs removing Guardians [Skotlex] * Fixed sql queries in logs giving an error. [Kevin] * Fixed @memo ignoring the nomemo map flag, thanks to Maeki. [Kevin] * Enabled an account flood protection system defaulting to 1 account every 10 seconds. [Kevin] * Corrected dynamic mob unloading to remove slaves. [Skotlex] * Added Maeki's fix for handling the sql connection to the log server [Skotlex] * A reminder to people who seem to have a broken item_db (wrong item sprites, doing nothing on click, etc): there was an update to item_db some days ago, a new column which is used to determine refineable items (which goes between eLv and View) The shipped item_db.txt is already updated, but if you have custom files, you can try updating them using the gawk line (further below this changelog) or this short sed command (from within the db directory): gsed -re 's/([^,]*,){16}/&,/' < item_db.txt > item_db.fix And then replace item_db.txt with the newly created file (if ya don't have gsed, try sed. All *nix should come with one or the other, and you can also get it with cygwin) * Moved the dynamic mob spawns/deletes to map_addblock/map_delblock [Skotlex] This pretty much guarantees that mobs won't be spawned/deleted twice from the same map. * Added random's battle_config flag for enabling/disabling dynamic mobs [Skotlex] Dynamic mobs is good for medium to small servers, but on large ones it gets to be somewhat pointless. * Fixed disp_hpmeter, I think (can't test it, but the code looks ok) [Skotlex] * Added battle athena option mob_remove_delay [Skotlex] Now dynamic mobs are not removed inmediately, but after some time has passed. Default value is 60 secs * Added debugging information about dynamic mobs [Skotlex] Helps keep track of how many mobs are being removed/spawned, use it to track any possible bugs! Should be removed after dynamic mobs are good enough. * Some changes to dynamic mob unloading to avoid remove summoned mobs and always remove mob slaves. [Skotlex] * Fixed a nasty pc.c bug thanks to komurka [massdriller] * Added Sasuke's modification to allow certain gm levels to see the hp bars [massdriller] 05/31 * Added Einbroch mobs to dead branch DB [Arutema] * Fixed NPC Typo [Codemaster] * Updated help.txt, fixed a compile time warning on BSD systems. [Kevin] * @marry auto-gives named rings, removed @rings as in-needed [Arutema] * Fixed some compilation errors in BSD systems. [Kevin] * Restored dynamic mob cleaning to what it was a couple of nights ago Should send the system back before all hell broke loose. [Skotlex] * Added battle_config options min_hitrate & max_hitrate [Skotlex] These only affect the new attack function, and th defaults are 5%-95% * Added client-messages for when an item can't be drop/stored [Skotlex] * Finished implementing the "optimization" item_trade.txt [Skotlex] * Optimised the long forgotten MVP arena [massdriller] 05/30 * Rewrote the trade-add-item function, it was hella messy [Skotlex] * Updated item_trade.txt implementation [Skotlex] GM-override lv is still to be implemented. Code has been reviewed, but not actually tested yet, use with caution. * Fixed fame list first loading, at server startup [DracoRPG] * added lordalfa's @me action command [massdriller] * Reverted changes to dynamic mob removal, now all mobs are removed [Skotlex] mob_remove_damaged is still respected. * Partial implementation of item_trade.txt, not quite finished yet [Skotlex] * Fixed mob_remove_damaged [Skotlex] * Added two new battle_athena options: [Skotlex] show_hp_sp_drain (yes/no): displays drained hp/sp from attacks (ie: Hunter Fly Card) show_hp_sp_gain (yes/no): displays gained hp/sp from killing mobs (ie: Sky Deleter Card) * bHPGainValue, bSPGainValue will only display gained hp/sp when said gain is above 0. [Skotlex] * Changed hp_dispmeter from yes/no to GM-level [Skotlex] Note that now the default value is hp_dispmeter: 100 * Fixed item_avail.txt reading could crash on newline [celest] * Speedup and fixed @reloaditemdb messing up inventory data [celest] 05/29 * Optimised job quests scripts [massdriller] * Fixed guild expulsion bug, two chars on same account would be expelled. [Kevin] * Dynamic mob unloading won't touch mobs with a deletetimer now [Skotlex] this affects mobs scheduled to be removed (including @summon mobs) * Dynamic mobs now also removes mobs that have a master [Skotlex] * Fixed Knockback skills on the new attack function [Skotlex] * Rewrote the vitality reduction equation in the new attack funcion [Skotlex] The new equation conforms to rodatazone's information here: http://rodatazone.simgaming.net/mechanics/substats.php#def * Fixed item_db.txt to contain the new refinable column [Skotlex] (I accidentally commited the old item_db last time...) TXT users with custom items can update their custom db using gawk (*nix or under Cygwin) this way (thanks to Sasuke): gawk -F, '{ for (i=1; i<= NF; i++) { if (i==16) { printf $i; printf ",";printf ","; } else if ( i==NF ) { print $i; } else { printf $i; printf ","; } } }' db/item_db2.txt > item_db2.new.txt Run it from within the root eAthena directory, and you'll get an updated item_db2.txt in your root directory. However, all custom items are not refineable by default this way, you still have to set to 1 the refineable column where it applies on your custom item_db. * Improved uptime checking, by Shinomori * Improved calltable import/exporting, by Shinomori * Standardised init/finalise functions' names [celest] * Fixed SVN version display at client connection, thanks to Maeki [DracoRPG] * Prevented Snatcher to try stealing players and already stolen mobs, thanks to shadow [DracoRPG] * Fixed Parrying and slightly organized status_change_start [DracoRPG] * Removed fame list update timer and made it to refresh the list everytime pc_addfame is ran [DracoRPG] 05/28 ~ Name of NPC file in map_athena.conf is now scripts_main.conf ~ Added a new column to item_db.txt/item_db2.txt: refineable [Skotlex] The column goes between equip_level and view, use upgrade_svn1863.sql to update sql tables (including item_db2.txt). Custom item users of txt servers will have to update manually. When the column's value is 0, NULL (sql) or blank (txt), the item can't be refined. OLD ITEM_DBS WILL NOT WORK WITH THIS NEW UPDATE, update your custom items! * Fixed a crash bug in pet_heal_timer on timer mismatch. [Skotlex] Thanks to Celest for noticing it out. * Fixed the critical attacks bug in the new attack function. [Skotlex] * Added MassDriller's updated readme.html files. [committed by Skotlex] * Fixed script_athena.conf reading of "event_requires_trigger". [Skotlex] It was looking for "require_set_trigger" instead of "event_requires_trigger", which effectively ignored the event_require_trigger's value. Logout events should now be usable without the need of a global variable. * Registered all used timer functions to help debugging [celest] * Added -DMINICORE to compile core.c (for converters and ladmin) [celest] * Removed most unused code and files in char and login converters [celest] * Moved converters to /txt-converters [celest] * Some tidying up in core and socket.c [celest] * Fixed a bug in the new attack function dealing with dual-wielding [Skotlex] 05/27 * Removed YET AGAIN the mob's skill_idle_flag function. [Skotlex] Komurka updated the mob_skill_db so that it is not needed anymore. * Modified the critical equation on the new attack function [Skotlex] The original equation ((1 + LUK*0.3 + EquipmentBonuses) * CritModifier - TargetLuk/5) was meant for official servers, where mobs don't do criticals. If applied to mobs, they get very high critical rate, so the luk reduction was bumped up to TargetLuk*3/10 on situations where a player is targeted by a mob. * Re-Applied the idle_skill_flag [Skotlex] It was removed because people said it was broken, however it works exactly the way Komurka explained it to me: A mob can cast only one idle skill, and can't do another one until it moves. If the mob casts too many idle skills because it casts/moves/casts, then increase the skill's delay in the database! If it still does "not works", drop me a line explaining why, because it works exactly as I was told it should. * Small adjustment of the critical equation in the new attack function [Skotlex] * Fixed some crashes related to pet skills and timers [Skotlex] * Fixed 1 delete_timer error with pc_stopwalking [celest] 05/26 * Tidied up mob.c and map.c a bit [celest] * Removed rehash() in atcommand.c [celest] * Fixed @reloadscript issue with dynamic mobs [celest] * Added flush fifos first before reloading in @reloadscript [celest] * Added spawn mobs with 1 second delay instead if moblist is full, by Shinomori * Fixed wrong name saved when adding friends, thanks to Maeki * Fixed itemhealrate stackable, thanks to starlon * Set the new_attack_function to be used by default. [Skotlex] This function replaces the three previously used functions (pc/mob/pet) into a single one which was rewritten to follow the attack algorythm as described in http://rodatazone.simgaming.net/mechanics/attacks.php Please report any inconsistencies or strange behaviour that this new function brings (only affects physical attacks/skills) on the boards. If anyone can do some performance comparisons with the old method, that'd be useful too. If you absolutely don't want to test it and prefer the old method, in battle_athena.conf add a line that goes: new_attack_function: no 05/25 * Fixed typos in Absorb Spirits, Double Casting and Tarot Card, thanks to Komurka and Avaj * Added missing code for Flasher, thanks to Komurka * Fixed a string bug in grfio_resnametable [celest] * Updated the readme files to the current statistics. [Mass Zero] 05/24 * Added 'make addons' -- plugins will not be compiled by default now [celest] * Ported uptime logging function to eAthena plugin [celest] * Ported pid file creation function to eAthena plugin [celest] * Ported stackdump creation function to eAthena plugin [celest] * Added capability to export to plugins [celest] * Fixed ensemble skills, thanks to Komurka * Fixed Dissonance damage, thanks to shadow * Reverted db/pet_db.txt to it's original form. [Skotlex] The pet skills shipped with eA should be as close as possible to the original servers. If you prefer the current custom skills in place just don't update the pet_db.txt file. ` (Somehow my custom pet skills table got updated to svn and I didn't notice it ^^') 05/23 * Fixed a few problems wit Dynamic Mobs [Wizputer] Increased max mobs per map from 32 -> 128 Fix mob unloading Special Mobs w/ Spawn delays are exempted (MVPs, Gaurdians, Branches, and summoned) Added Option for damaged mobs not to be removed in battle config ( Default yes ) * Mob count in scripts returned 1 less then it was supposed to. [Kevin] * Updated tool/stackdump script to support eA's own stackdumps [celest] - Type ./stackdump help to check * Changed mob_cleanup_sub simply to cleanup_sub [celest] * Fixed some memory leaks with dynamic mobs [celest] -- notes: Check bugs.txt * Fixed some compile warnings in gcc 4.0 [celest] 05/22 * Added Jbain's server restarter bat files. [massdriller] * Drastically Improved Memory usage by making mobs dynamic [Wizputer] Mobs load only when a PC is present on the map Mobs that have special spawn delays are not loaded/unloaded ( Reduced memory usage by 60% for 419 Maps ) * FIFO size fixes [Shinomori] * Fame point system now uses pc_addfame [DracoRPG] * Added support for new NPC sprites in @disguise, thanks to akusarujin [DracoRPG] * CharSQL: changed the init / login connection issue, now 'online' players will be set offline in login @ start / login reconnect [Sirius] 05/19 * Fixed displaying new when char_new is set to one and changed the option to char_new_display. [Kevin] * Fixed mysql fix. [Kevin] * Fixed a previous fix with pet idle skills, needs db update not hard coding. [Kevin] * Fixed mysql queries to support the following: [Kevin] -Names now support the ' character -Runs faster because querying string fields doesn't do strlen. -Debug option to revert back to old debug queries, will disable the support of the two above. * Added No Dead Branching Mapflags in cities [massdriller] * Fixed an inconsistent message for log_chat in conf file reading [celest] * Fixed Asura Strike to need only 1 spiritball if used after Chain Crush [celest] * Added Asura Strike can be chained after Tiger Fist [celest] 05/18 * Fixed up character creation, txt supports three status error and char_new is now enabled. [Kevin] * CharSQL: fixed the Delete Char issue, now it's using the sd->email instead if the sql email [Sirius] * Removed status points adding can be limited via gm level [celest] * Removed double clean up when char server disconnects from map [celest] * Removed 'mysql_real_escape_string' usage in SQL char until it'll no longer cause crashes [celest] * Added signal handler for SIGXFSZ [celest] * Fixed some compile errors [celest] * Fixed broken status changes [celest] * Fixed Max Overthrust not working [celest] 05/17 * Fixed null pointer in map.c. [Kevin] * Fixed on a compile time error in status.c/h [Kevin] * Fixed an invalid pointer in clif.c [Kevin] * Removed 'Agi Up' visual effect from Berserk [DracoRPG] * Tidied up npc.c a bit [celest] * Added crash check in SQL char creation [celest] * Changed Marionette Control's inf type [celest] * Added infinite emperium/guardian hp fix, thanks to random 05/16 * Fixed a slightly large inefficiency and bug in clif_foreachclient thanks to Sasuke-! [Kevin] * Fixed a bug in minimap thanks to Komurka. [Kevin] * Added mysql_real_escape_string() while creating a new character - Might fix a few character names if you have no restrictions [Codemaster] * Fixed 'rudeattacked' skill condition, thanks to Komurka * Replaced zlib_win32.h and zconf_win32.h with the v1.2.2 files in /zlib [celest] * Ported zlib.dll loading to eAthena plugin form [celest] * Fixed some NPC skills acquirable by @allskill [celest] * Merged sigpipe's handler with sig_proc [celest] * Optimised timer.c a bit (partially from Shinomori's changes) [celest] * Fixed up some more null pointers. [Kevin] * Added Chat-Logging (for Whisper, Party and GuildChat!) [Sirius] - Sql Log Users please upgrade: sql-files/upgrade_svn1759.sql 05/15 * Minor bug fix by NSSTrunks * Added Shinomori's MakeWord, MakeDWord and GetWord functions to split a 'long' into 'short' & assemble 'short' into 'long', used for produced items and pet eggs [DracoRPG] * Fixed famous player's produced items not giving bonuses if the producer had a too long character ID (exceeding 'short' capacity and then stored both in card2 and 3) [DracoRPG] * Added gm command symbol checks for atcommand/charcommand.c, thanks to akusarujin * Added valid session check in clif_additem, thanks to Sasuke * Fixed a heavy memory leak with the Memory Manager, by Shinomori * Fixed a memory leak with empty scripts, by Shinomori * Removed npc unloading via npcname_db finalising -- fixes some wild frees [celest] * Fixed monsters' attacked_count never cleared if it successfully casts a skill from 'rudeattacked' condition [celest] * Fixed some NPC skills can be copied by Plagiarism [celest] * Changed Enchant D.Poison's poisoning effect to not work on bosses instead of damage bonus [celest] * Fixed an item dupe bug, very rare occasions [Kevin] * Tidied up pc.c [celest] * Fixed some wild frees from npc unloading at shutdown [celest] * Changed Make Arrow to not display equipped items as material choices [celest] * Removed 'make_arrow_flag' -- use 'produce_flag' instead [celest] * Fixed equip breaking bug in pc.c. [Kevin] * Fixed alot of null pointers thanks to Sasuke-. [Kevin] * Set default in battle_athena.conf of player_skillup_limit to yes. [Kevin] * Extended hide_gm_session to @where [Kevin] * Fixed a guild exp overflow bug in guild.c & int_guild.c[Kevin] * new command @iteminfo item_name/id (@ii). It works, but will be improved [Lupus] * added all known mapflags into @mapinfo command. Rearranged output [Lupus] 05/14 * Simplified @cleanmap [celest] * Fixed finalizing clean up could miss 1 map [celest] * Added placeholder code for NPC_EMOTION_ON [celest] * Fixed damage bonuses (damage_rate) not working for normal attacks [celest] * Fixed Concentration (again ^^; ), thanks to lordalfa * Fixed base file name sometimes not retrieved properly in core [celest] * Removed "memwatch.h" includes for all source files other than malloc.h -- only 1 define is enough [celest] * Fixed wrong packet for 01-10aSakexe's UseSkillToPos [celest] * Skip rearranging large memory blocks while cleaning up on memory manager shutdown [celest] * Updated the guild aura skills -- gives +1 stat per level, and runs a bit faster [celest] * Fixed broken Marionette Control -- changed to clowns/gypsies that are under marionette will not be able to use the skill [celest] * Fixed Absorb Spirits working on boss-type monsters [celest] * Fixed Body Relocation hiding when used by monsters [celest] * You can only use mute commands when the system is enabled. [Kevin] * Fixed a guild bug in inif_guild_leave in intif.c, would expel are characters on an account [Kevin] * Added new mapflags (mainly for fixing jobquests abuse and arenas) by Lorky, fixed added by [Lupus] - noexp - on killing a monster you don't obtain both Base and Job EXP at all (including MVP EXP bonus) - nobaseexp - on killing a monster you don't obtain Base EXP at all (including MVP EXP bonus) - nojobexp - on killing a monster you don't obtain Job EXP at all (including MVP EXP bonus) nobaseexp+nojobexp=noexp in other words, 'noexp' set both mapflags 'nobaseexp' and 'nojobexp' - noloot - on killing ANY monster you get no loot at all - nomobloot - on killing a common monster you get no loot at all - nomvploot - on killing a MVP monster you get no MVP loot at all nomobloot+nomvploot=noloot in other words, 'noloot' set both mapflags 'nomobloot' and 'nomvploot' 05/12 * Very very very strong weapons (forged with 3 Star Crumbs) now give +40 dmg instead of +15 dmg [DracoRPG] * Weapons/potions made by a top-10 famous player now give bonus effects [DracoRPG] * Updated the battle.c change made to generate compile time errors if you put the wrong battle_config option with the wrong type into the wrong place [MouseJstr] * Added item type 11 into LOGs filter [Lupus] * Removed mob_skill_use, if you don't want mobskills, set mob_skill_rate to zero [Skotlex] * Modified drops_by_luk behaviour. See battle_athena.conf for details [Skotlex] The new system works a lot like Diablo 2, where having 100% better chance of finding items means that you basicly get double drop rates than others. * Implemented pet idle skills restrictions as explained by Komurka [Skotlex] From what I was told, a mob can only cast a skill while in idle state once, and it needs to move before it can do another idle-state skill. * Tested and fixed wedding_ignorepalette, it now works as it should [Skotlex] * Tested the new item type 11. I forgot to add the code for the sql version, but that's now fixed and the new system works as it should [Skotlex] * Put a fix in for the bug mentioned below [MouseJstr] * Added code to make min_hair_style, max_hair_style, min_hair_color, max_hair_color, min_cloth_color, max_cloth_color work [Skotlex] What it does, is cap the values whenever you try to change the character's dye via an npc/script, it won't touch character's dye colors upon loading. * Shrinked @mapinfo output, added 2 missing flags NOWARP / NOWARPTO [Lupus] * New item type (11) to item_db: delay-consumed usables. [Skotlex] . All items that have in their script "pet" or "itemskill" must be changed from type 2 to 11. The new type of item has the property of not being consumed on double click, but after a target is selected (hence it is ideal for lures, skill-casting items and the yggdrasil leaf) The item_db.txt file was updated to reflect these changes. Custom pet lure owners, update! SQL users can run upgrade_svn1705.sql which will upgrade both item databases (including all custom lures) * Added battle config option 'ignore_items_gender'. [Lupus] So any player can equip any item regardless of the gender restrictions. Note: It's ignored by default since gender check isn't implemented at official servers. There are 2 exceptions: Wedding Ring M/ Wedding Ring F (their gender check won't be affected) 05/11 * Added by popular demand battle config options mob_skill_rate & mob_skill_delay. See battle_athena.conf for further information. [Skotlex] * Added battle config option wedding_ignorepalette (default no) When enabled, the wedding dress/tux will always display with the default dye (not all palette packs bring palettes for the wedding class, nor they should) (Needs testing) * Changed most battle_athena options to unsigned short. This means the maximum valid value is around 60K (65535 on most systems) which translates to ~60 secs or 600% (600x) for most options. See conf-tmpl/battle_athena.conf for details on which variables were excluded (exp/drop rates values are excluded, obviously). * Removed boss warping code since it is currently supported by the mob skill DB 'rudeattacked' state [celest] * Fixed plagiarised skills replacing actual learnt skills [celest] * Fixed 'gmcommand' script command crashing when no players are attached [celest] ... which means the command does not work in script events like OnClock! 05/10 * Added code to prevent pet lures from being wasted until after selecting a target (only works with official lures). [Skotlex] * Added MAX_REFINE to status.h [Skotlex] Enables for custom max refine levels using the success rates in refine_db.txt, npcs will know they reached the max level when the success chance returns 0. (npcs still need updating to support this model) - Note: Whitesmith's refinery skill might need to be tweaked if you want them to be able to forge above lv10 and up to whatever custom max you wish. - Note2: Npc's refine_sucess script command ignores this max. * Skill updates [celest] - Fixed Charge Arrow not requiring bows - Fixed Enchant Deadly Poison working on bosses - Fixed Concentration (again! xD) def penalty, thanks to UniRing - Added code for NPC_REVENGE * Added 'masterattacked' mob skill condition [celest] * Added battle_config.use_statpoint_table [Skotlex] When set to no, a new equation is used to calculate stat points after a reset. I've tested the equation to death, so it should work flawlessly. Advantages of using the equation: No need for statpoint.txt (it is still read for the time being), and stat changes through npc buyers/sellers are preserved after a reset. * Restructured clif_parse_Wanttoconnection [celest] * Fixed packet version detecting not working properly if last version's connection packet is the same as the DB but with different values [celest] * Added built-in support for 2005-05-09aSakexe and changed 'packet_ver_flag' default in battle conf to 511 [celest] * Added load local resnametables.txt into memory instead of opening and reading it every time we look for a file [celest] * Fixed crash if resnametables.txt was not found in a grf [celest] * Removed some unnecessary steps in grf file lists loading [celest] * Added display_hallucination for clients where the effect lags badly [Skotlex] * Added the battle_config options for managing the pet-skills system [Skotlex] * Incorporated the new pet attack/skill system. [Skotlex] See db/pet_db.txt for explanation, or visit http://www.eathena.deltaanime.net/board/index.php?showtopic=29918 for details and support. * Fixed Marionette skill. Now you can't target other Clowns or Gypsies [Lupus] * Fixed all Hunters traps to affect Players in PVP/GVG places only. [Lupus] And Shockwave Trap doesn't work on monsters, because they don't have SP 05/09 ~ Added sql_files/upgrade_svn1665.sql to update hair, hair colour and clothes colours' field format (thanks to Zoc) * Updated char creation to support 24 hairstyles (from 5/10's patch) [celest] * Fixed broken stats check during SQL char creation, thanks to Sasuke * Removed an unnecessary check in plugins loading, thanks to Shinomori * Changed grfio_read + grfio_size usage to grfio_reads() -- a bit faster [celest] * Moved the win32 zlib .h files from /lib to /zlib [celest] * Moved 'afm_dir' setting to map_athena.conf [celest] * Moved grfio.c from /common to /map [celest] * Changed grf-files.txt loading: [celest] ~ 'data/sdata/adata' loading will still be supported, but is replaced with grf: To load extra GRFs (if you have custom ones for your server for example, or to load weekly kRO gpf's) just add as many 'grf' commands as you want * Tidied up grfio.c a bit [celest] * Added FULLY updated mobs skills DB by Komurka (up to Aegis Zone 8.5) [Lupus] * added a packet to remove maps of other servers [Sirius] 05/08 * documented the packetlentable of chrif [Sirius] * fixed crash in clif_joinchatok [veider] * Optimising 2 party queries in SQL char, thanks to Zoc * Fixed a typo in SQL party saving, sorry ^^; [celest] * Fixed compile errors in login and char converters [celest] * Fixed ensemble skills and Benedictio, thanks to shaeh and massdriller * Fixed typo in Concentration's hit bonus, thanks to UniRing * Added additional hit bonus for Weapon Research [celest] * Fixed a missing check in Absorb Spirits [celest] * Made Meteor Assault cause Bleeding effect too. According the skill desc, it causes all effects to ANY enemy by chance now. [Lupus] * Typos and grammatical fixes in various files [DracoRPG] * Changed Hair style, Hair & Clothes colors fields to unsigned to allow use of 255 palettes [DracoRPG] * Enhanced @send to allow use of 20 additionnal arguments after the packet identifier [DracoRPG] * ATK % bonuses provided by Power-Thrust (and similar skills) and attack skills now add instead of multiplicating [DracoRPG] * Added sd->right_weapon and sd->left_weapon structs to store all weapon-specific values like watk [DracoRPG] * Added pc_istop10fame function [DracoRPG] 05/07 * Fixed plagiarised skills not updated when hit by different skill level [celest] * Added server type will be set in the core earlier -- Fixes some plugins cannot loaded if called before the server finished initialising [celest] * Added high priority plugins (explicitly set in conf file) will not be unloaded even if incompatible [celest] * Added 'DLL_Test' plugin event [celest] * Ported the upnp feature to eA plugin form [celest] * massdriller's npc update, fixing SIGPIPE in core and SunOS additions to makefile [Shinomori] 05/06 * Dev's pls take a look to Dev/mmo_change_report.txt [Sirius] * Fixed build issue under linux machines [MouseJstr] * Fixed possible stat exploit in char_sql, thanks WoWer [veider] * Fixed compilation warnings on NetBSD [veider] * Adding unequip script command, tnx to Spectre [Shinomori] 05/04 * Fixed monsters can't use Heal/Potion Pitcher when hidden, thanks to Komurka * Documented the sample plugin source a bit [celest] * Added sample plugin 'sample.dll' [celest] * Finished plugin events system [celest] * Finished plugin loading system [celest] * Added Shinomori's findfile function [celest] 05/02 * Tidied up pc and mob counttargetted code [celest] * Updated fame lists to display offline characters' names properly, and * Changed char server to send char id instead of account id in fame lists, thanks to Sara-chan * Fixed a mistake in the friends list code [celest] * Fixed friend's names not sent properly [celest] * Changed Concentration's hit bonus, thanks to ShAPoNe 05/01 ~ Added sql_files/upgrade_svn1623.sql to update item_db2's format, and mob stats in mob_db to unsigned int (thanks to Zoc, Wallex and akusarujin) * Added item_db2 and mob_db2 reading for SQL map, thanks to sbilly * Added new mob skills -- could be inaccurate though ^^; [celest] * Added proper support for script functions with no parameters, thanks to Wallex i.e getrefine() instead of getrefine(0) * Removed 'skill failed' message for Frost Diver [celest] * Moved Lullaby and Dissonance effect code to skill_onplace_timer [celest] * Updated some skill id's to fit in a few new mob skills (not coded yet) [celest] * Increased mob skills using base chance to 1/1000 instead of 1/10000, and monster delay base rate to 1/100 instead of 1/400, thanks to Komurka * Fixed players able to request trade with gm's even if gm_can_drop_lv was set, thanks to Komurka 04/29 * fd checks in send/recv fifo, thanks to Sasuke [Shinomori] * Restructured malloc.h / malloc.c a bit [celest] * Fixed a memory leak in console [celest] * Fixed console to be compatible with the dummy socket [celest] * Fixed TXT login and map not shutdown cleanly if exitting by console [celest] * Changed Spiral Pierce's effect to stop movement instead of stun [celest] * Fixed Chase Walk to properly add a STR bonus [celest] * Added effect for Tarot Card [celest] * Cleaned up clif_specialeffect [celest] * Added hidden gm's will not show warp effect when logging off, and will return 'target character not logged in' when /exall is on, thanks to starlon * Fixed non-movable monsters moving if they're blind [celest] * Added boss-type monsters will auto teleport when 'rude-attacked' [celest] -- note: Just a temporary fix, the mob skill db still needs updating * Added boss-type monsters cannot be knocked back by skills, thanks to Komurka 04/28 * Fixed a bot trading hack [celest] * 'isequipped' will now 'tag' items that are used in its set, so a 2nd set will not be able to use items from the 1st set [celest] * Changed bAddItemHealRate to be based on total hp healed including vit bonuses instead of base hp [celest] * Tweaked skill casting time and delay logic again [celest] * Fixed another typo in bAutospell, thanks to Komurka [celest] 04/27 * Updated friend list functions, much thanks to Tsusai / Fusion! * Added packet for a divorce notice (" has divorced with name>") [celest] * Added packet for /pvpinfo (only usable in pvp maps) [celest] * Added display for /blacksmith and /alchemist [celest] -- To-do: Offline characters won't have their name displayed properly yet * Added display when blacksmiths and alchemists gain fame points [celest] * Fixed talkie box not working when packet DB is enabled [celest] * Removed redundant monk() and parse_SkillMessage in clif.c [celest] * Updated @send to check send lengths from packet_db [celest] * Fixed @mutearea's time always set to 15 minutes [celest] * Fixed a typo in the bAutospell's, thanks to Komurka * Reverted a setting in skill casting time calculating [celest] * Fixed Gravitation not affecting enemies, and ignore element modifiers [celest] * Added 'bSPLossRate' effect [celest] 04/26 * Added @load/unloadnpc [celest] usage: @loadnpc , @unloadnpc * Changed @enable/disablenpc to @show/hidenpc [celest] -- Note: the script commands 'enable/disablenpc' arent affected * Updated max packet to 0x234 for 205-04-25aSakexe [celest] * Added cannot use warps when hidden/cloaked [celest] * Re-fixed an exp overflow bug and raised cap to 2bil [celest] * Added some more of kRO's 04/26 patch [celest] * Fixed a crash in stripping skills [celest] * Tidied up battle.c a bit [celest] * Added Devotion's effects will be lost if changed map/teleported [celest] * Added bDoubleRate effects can stack with Double Attack [celest] * Added support to have up to 20 autocast skills from cards [celest] * Applied new advanced skills changes from 4/26 patch [DracoRPG] I could not do everything, things remaining to do : - Alter Double Casting success rate (did not find the code... is there one ? xD) - Check that all songs/dances/duets are uncancelable by Dispell - Make Wand of Hermod affect only party/guild members (and check for a warp portal !) 04/25 * Further improvements on stripping/breaking + added support for targeting mobs with strip skills [DracoRPG] * Added fd check to clif_additem [celest] * Optimised weapon stripping/breaking a bit -- skip searching from the item DB everything we call this [celest] * Fixed a possible crash when adding timer function strings [celest] * Tidied up skill casting time calculating a bit + Fixed a possible bad setting when dex > 'castrate_dex_scale', thanks to phabyo [celest] * Changed skill unit group checks in status_change_timer a bit [celest] * Fixed possible sql injection with SQL gm command logging, thanks to starlon [celest] 04/24 * Work on skills [DracoRPG] - Cleanup in skill.c, added missing guild skills and switched all names to iRO ones in skill names list - Fixed typo in a guild skill name : GD_KAFRACONTACT -> GD_KAFRACONTRACT - Entirely rewrote equipment stripping/breaking so that stripping/breaking weapon will affect BOTH weapons of a dual wielding Assassin, and that stripping/breaking shield won't affect two-handed or left-hand weapons * Pets can't attack Guardians and Emperium, WoE or not !! [DracoRPG] * Replaced autospell_type and autospell2_type with a simpler way to save auto- casting [celest] + Fixed a typo, thanks to Landarma * Fixed a typo in socket timeout messages [celest] 04/23 * Fixed not working PVPOFF in scripts. [Lupus] Due to the bug it could work only on maps with NOPVP flag. * Added item produce pentlty to Baby Class [Lupus] Comparing with common classes, Baby Alchemist/Blacksmith have 20% less chance of successful item making. 04/22 * Fix main.sql to include the fields that are in the upgrade files [MouseJstr] * Added bonus4 support for bAutoSpelll [celest] * Fixed Cast Cancel [celest] * Fixed compile error in log.c -- had to remove the 'Log refined items' option in log config [celest] * Fixed plagariased skills not cleaned up properly when copying another new skill, and corrected copying skill level [celest] * Added Spiral Pierce ignores defense, thanks to Komurka * Added base code for PK/Karma system (not completed) [celest] - Added equipment drop based on alignment (not enabled yet) - Added alignment shift after PK (not enabled yet) - Added 5 minute silenced status PK penalty * Added @packetmode (for debug only) [celest] * Added clif_gm_silence to clif.c and rearranged ReqNoChat abit [celest] * Added damage reduction in PK mode [celest] * Added /memo cannot be used when dead [celest] * Added bonus2 support for bAddMonsterDropItem [celest] * Added db/item_group_db.txt [celest] * Added bAddMonsterDropItemGroup [celest] ~ check doc/item_bonus.txt * Fixed bCriticalAddRace giving too little increments [celest] * Fixed Ruwach revealing Chasewalking players [DracoRPG] * Changed equipment breaking to 'on' by default [DracoRPG] 04/21 * Fixed a typo in mobs skills checking [celest]