Changelog-Trunk.txt 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712
  1. Date Added
  2. AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
  3. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
  4. 2006/05/31
  5. * Made the char_name_option char_athena.conf setting apply to parties and
  6. guilds as well. It cannot be applied to pets yet without adding a
  7. change-name-request interserver packet. [Skotlex]
  8. * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them.
  9. [Skotlex]
  10. * Added function char_read_fame_list for famelist reading. Invoked it on
  11. init, and made it be sent automatically to connecting map servers.
  12. [Skotlex]
  13. * Some cleaning of the fame-list reading code. [Skotlex]
  14. * Some cleaning of the fame-update code, fixed a logic bug which made the
  15. ranking list fail to display the correct ranker names. [Skotlex]
  16. * Removed typedef bool from socket.h and included cbasetypes.c instead.
  17. [Skotlex]
  18. * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in
  19. status_calc_bl. [Skotlex]
  20. * [Improved]:
  21. - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance]
  22. * [Fixed]:
  23. - nullpo in pet.c caused by equipping without checking if the pet is available.
  24. [Lance]
  25. * [Fixed]:
  26. - Latest client support completed! [Lance]
  27. * [Fixed]:
  28. - Missing #include for cbasetypes.h in login server SQL.
  29. - Logic errors in run_script [Lance]
  30. * [Added]:
  31. - Partial support for latest login packet. But it seems to have a new security
  32. module. [Lance]
  33. 2006/05/30
  34. * [Improved]:
  35. - Fake NPC interface to use real NPCs.
  36. - Scripting interface to restore and save sd->npc_id. [Lance]
  37. * Added function pc_check_skilltree for checking if you unlocked new
  38. tree-skills when raising non-passive skills. [Skotlex]
  39. * Fixed flee/hit calculation in status_calc_bl to account for bonuses from
  40. the base status. [Skotlex]
  41. * [Fixed]:
  42. - Compatibility problems in login.c [Lance]
  43. * Fixed pets ignoring can-act delays for skill usage. [Skotlex]
  44. * [Added]:
  45. - Mercenary.c in VS.NET 2005 project files
  46. [Improved]:
  47. - loginlog using unsigned long `ip` field.
  48. (Please check for compatibility problems). [Lance]
  49. * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain
  50. bonuses (like effect-on-hit) to stack. [Skotlex]
  51. * slaves inherit speed setting will now work regardless of whether the
  52. slave or master has the MD_CANMOVE mode bit. [Skotlex]
  53. * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex]
  54. * AL_TELEPORT will fail when used by slave mobs. [Skotlex]
  55. * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable
  56. attacks. [Skotlex]
  57. * Fixed status_damage not setting your HP to 0 when you died [Skotlex]
  58. * Fixed the pcbonus2 warnings using the wrong value before printing the
  59. invalid Element error. [Skotlex]
  60. * Fixed underflow issues when calculating dmotion. [Skotlex]
  61. * Fixed Absorb Spirit Spheres [Skotlex]
  62. * Added battle_config min_chat_delay (default 0, battle/client.conf)
  63. specifies in ms what is the min delay between player sent chats
  64. (whisper/global/party/guild). Messages that exceed this threshold are
  65. silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the
  66. player?) [Skotlex]
  67. * [Fixed]:
  68. - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance]
  69. * Rewrote/cleaned up @petfriendly. [Skotlex]
  70. * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex]
  71. * Updated attr_fix_table reading code to account for ELE_MAX (will
  72. correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex]
  73. * Aggressive mobs will now use battle_check_range rather than mob_can_reach
  74. to decide whether to lock-on or not to a target within sight-range. [Skotlex]
  75. * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex]
  76. * Added error messages in pc_bonus* functions when an invalid element is
  77. passed to the relevant bonuses. [Skotlex]
  78. * [Optimized]:
  79. - clif_specialeffect to use the enums.
  80. [Improved]:
  81. - buildin_specialeffect and buildin_specialeffect2 to accept effect area
  82. definition. [Lance]
  83. * [Added]:
  84. - Visual Studio .NET 2003 includes for mercenary.c [Lance]
  85. * Removed the on-die specific code from unit_remove_map and placed it on
  86. the corresponding *_dead functions. unit_remove_map should never assume the
  87. char died, it is just a "remove from map" function. [Skotlex]
  88. * Updated status_damage to handle the general death code (clearing status
  89. changes, clearing skill related data, sending death packet, etc). The
  90. return value from the *_dead functions will tell it what to do or not with
  91. the object (death aborted, clear it from map/memory, etc) [Skotlex]
  92. * Cleaned up pc_dead to take advantage of the fact that status changes are
  93. not ended until after the function. [Skotlex]
  94. * Disabled ontouch npcs triggering on hidden/chase-walk characters.
  95. [Skotlex]
  96. * Updated/adapted current Homun code to use the status_data update.
  97. [Skotlex]
  98. * Updated map-server Makefile to compile mercenary.* files. [Skotlex]
  99. * [Fixed]:
  100. - Pets attacking even master is dead. [Lance]
  101. * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0
  102. (negative values should be allowed when attack is absorbed by target's
  103. element) [Skotlex]
  104. 2006/05/29
  105. * [Fixed]:
  106. - Missing ';' in item #4358 [Lance]
  107. * [Fixed]:
  108. - Missing maps in map index database. [Lance]
  109. * [Fixed]:
  110. - Battle mechanics in battle_check_target [Lance]
  111. * [Fixed]:
  112. - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing.
  113. [Lance]
  114. * Cleaned up friend list saving and fixed loading of friends.txt file
  115. (char-txt) [Skotlex]
  116. * Added the Arunafeltz maps, not tested yet [Playtester]
  117. - someone with an up-to-date client should test them
  118. * Fixed pc_gainexp resetting your exp to 0 rather than adding it in...
  119. [Skotlex]
  120. * Corrected aspd calculation code to avoid negative overflows. [Skotlex]
  121. * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR
  122. instead of BL_PC and BL_MOB [Skotlex]
  123. * [Fixed]:
  124. - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance]
  125. * Removed Undead being inmune to poison status. [Skotlex]
  126. * Removed speed penalty from SC_SKA [Skotlex]
  127. * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex]
  128. * SC_DODGE won't be dispelled on death now. [Skotlex]
  129. * [Fixed]:
  130. - pc_follow_timer possible triggering crash.
  131. - pc_reg_received to use battle_status.hp instead of status.hp
  132. [Added]:
  133. - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance]
  134. * Added a division by zero check in mob_dead to prevent the (impossible)
  135. case where a mob dies with received damage of zero. [Skotlex]
  136. * Modified skill_get_range2 to return range 9 for skills with range 0 for
  137. Non-Players. This usually signals Self skills, and mobs/pets should be able
  138. to use them in other characters. [Skotlex]
  139. * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex]
  140. * Fixed draining when the amount drained is negative (invoke zap rather
  141. than heal) [Skotlex]
  142. * Implemented GS_FLING as per the current skill description. [Skotlex]
  143. * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than
  144. status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex]
  145. * Added some missing SC_* entries on the initial listing (potion related
  146. and speed up ones) [Skotlex]
  147. * Fixed function declaration of map_getcellp() [Skotlex]
  148. * [Fixed]:
  149. - status.c:920: warning: 'mbl' might be used uninitialized in this function
  150. - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function
  151. - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function
  152. - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance]
  153. * [Optimized]:
  154. - Removed unused variable (account_id) in storage_guild_storagesaved.
  155. * [Optimized]:
  156. - Removed unused checks for unsigned data type and possible logic error for
  157. char type (gcc treats char as unsigned). [Lance]
  158. * [Fixed]:
  159. - Relogging in with 0 HP didn't trigger dead event. [Lance]
  160. 2006/05/28
  161. * Added functions status_revive, pc_revive and mob_revive to handle revival
  162. (it doesn't handles player respawning, though). Fixed reviving @ commands.
  163. [Skotlex]
  164. * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes
  165. Bladestop causing an unknown status change message). [Skotlex]
  166. * Fixed MSS_DEAD state skills not triggering. [Skotlex]
  167. * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets]
  168. * [Fixed]:
  169. - script functions that doesn't pass references, thanks to End_of_exam. [Lance]
  170. * [Protected]:
  171. - clif_parse_LGMmessage from possible hacks [Lance]
  172. * Fixed unable to store n items into storage unless n was the total amount
  173. of items you had. [Skotlex]
  174. * Suppressed compilation warnings (unsigned and signed mismatches) [Lance]
  175. 2006/05/27
  176. * Added structure status_data which holds status-related information (str,
  177. agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc)
  178. and weapon_atk structure with the weapon specific info (atk, atk2, element)
  179. to be used by all combat structures (TODO: Homun needs to be updated to use
  180. it). This in change involves a LOT of changes throughout the code and many
  181. optimizations were done as well. Partial list (see svn changelog for complete
  182. changes): [Skotlex]
  183. - NOTE: Changes are substantial! I tested a bunch of stuff and all the
  184. skills I changed the most, but it is possible there are unnoticed bugs
  185. remaining to fix!
  186. - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data.
  187. - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead
  188. - Added status functions to deal with damage and healing (status_damage,
  189. status_heal, status_percent_change) and a bunch of defines for easier
  190. handling of them (status_percent_heal, status_percent_damage,
  191. status_fix_damage, status_kill, etc). Objects must be hurt/healed through
  192. THIS, pc_damage/mob_damage most no longer be directly invoked!
  193. - Rewrote and cleaned up battle_calc_misc_attack
  194. - Merged config options pc_attack_attr_none, mob_attack_attr_none,
  195. pet_attack_attr_none into attack_attr_none (type 4)
  196. - Removed config options player_defense_type, monster_defense_type,
  197. pet_defense_type in favor of weapon_defense_type
  198. - Modified skill_calc_heal to take into account the MEDITATION bonus.
  199. - Modified Slim Pitcher so it will work when casted by non-players. Will
  200. now also work with SP-healing items.
  201. - Rewrote Freedom of Cast code to use function status_freecast_switch to
  202. switch adelay/speed when cast begins/ends.
  203. - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for
  204. easier updating when used in conjunction with ground skills.
  205. - Fixed Asura Strike being usable from within a combo regardless of combo skill.
  206. - Added status_calc_bl which does status-change related calculations using
  207. as base the base_status of the bl object and the SCB_* flag passed. This is
  208. invoked on status changes, and status_calc_pc will no longer be invoked
  209. (which results on much faster status-change calculations).
  210. - pc_clean_skilltree will now also remove item-granted skills.
  211. - Learning skills will now only invoke status_calc_pc when the skill is passive.
  212. - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related
  213. packets and functions ONCE regardless of skill-levls earned.
  214. - Cleaned up pc_ regen related functions.
  215. - Made player-sprite mobs have item pickup animation and walkdelay when taking items.
  216. - Clones will copy a player's base status rather than battle status (so
  217. status-change alterations are not cloned)
  218. 2006/05/26
  219. * Part B of the homunculus code. [blackhole89]
  220. While most of the homunculus handling functions are in now, it still lacks
  221. code required for players to create it.
  222. Given I haven't screwed up, you could master yourself one through the DB though.
  223. * Fixed crashing in mob.c [Lance]
  224. * Patches to allow everything to work right. + 1 more sample script. [Lance]
  225. * Mob control engine tested 99% working so far. [Lance]
  226. * Change scripting engine's NPC scope vars to dot (.) style.
  227. * Improved and (should be fully) fixed the mob control engine. [Lance]
  228. * Fixed typos in char.c [Lance]
  229. * Rewrote fame rank lists system to reduce char-server load, as requested by
  230. Skotlex: now it has a copy of those lists, and updates only the proper one
  231. when needed instead of rebuilding all from saves everytime (which required
  232. to always save the character before rebuilding the lists) [DracoRPG]
  233. - Note it hasn't been compiled nor tested with SQL, please do it for me
  234. 2006/05/25
  235. * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional
  236. int-based damage component (which is added right before elemental
  237. modifiers) as described by AuronX. Pending further refining. [Skotlex]
  238. * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus]
  239. Fixed atcommand @request MSG numbers accordinly.
  240. On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too
  241. * Added NoVending mapflag. You may disable vending in the streets [Lupus]
  242. * Increased capacity for Account Variables to 64 [Skotlex]
  243. * Reverted Intravision implementation to that of stable's. [Skotlex]
  244. * Corrected Login Server taking it's first argument as both login config
  245. and lan config. [Skotlex]
  246. * Fixed mob control commands.
  247. * Fixed memory leak in scripts (again). Still have a few lying. [Lance]
  248. 2006/05/24
  249. * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout.
  250. * Item sharing now shares the same rules as exp sharing (no sharing when
  251. dead, or idle, etc) [Skotlex]
  252. * Fixed summoned slaves being able to cast onspawn summon-skills (slaves
  253. aren't supposed to be able to call minions) [Skotlex]
  254. * The clif_skill_poseffect packet will not be invoked in Snap unless the
  255. skill was successful. May fix the client-position lag. [Skotlex]
  256. * Merged item_db.sql from stable (the one from stable was more recent than
  257. the one of trunk...) [Skotlex]
  258. * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex]
  259. * Corrected a pair of incorrect sql query parsing logic in the login-sql
  260. ban request packet. [Skotlex]
  261. 2006/05/23
  262. * Corrected mob angry mode, now it only "restores" itself after being hit
  263. when the mob has no target within their range of sight rather than on
  264. picking a new target. [Skotlex]
  265. * Fixed wedding sprite where it would stay active after unequipping. [Zido]
  266. * Some cleanup of run_script, should fix the memory leak there. [Skotlex]
  267. * the charname request hack message has been downgraded to only include
  268. GM-invisible characters. [Skotlex]
  269. * corrected clif_charnameack to send negative ID when a disguised player
  270. asks for it's own disguised name. [Skotlex]
  271. * Cleaned up the disguised target-id checks taking into considering that
  272. the only character that sees a negative ID is the same disguised character.
  273. [Skotlex]
  274. * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce
  275. defense), Investigate and Icepick will now use the final def/vit-def values
  276. rather than the base ones. [Skotlex]
  277. * The move-enable condition checks for skills are now checked for only when
  278. on skill use, not at cast-end time. [Skotlex]
  279. * Corrected clif parse name request failing on disguised characters [Skotlex]
  280. * Corrected Soul Drain draining from all non-ground-based skills including
  281. non-magic attacks. [Skotlex]
  282. * Corrected pc_setoption to change the option and then change class.
  283. changing option-wedding will automatically convert the view-class as well.
  284. [Skotlex]
  285. * Corrected the 15% drop rate increase when killing higher level mobs in
  286. pk-mode triggering for all mobs with lower level than yourself. Thanks to
  287. Vayu. [Skotlex]
  288. * Fixed typo (this time it's not my fault) in script_reload() clearing the same
  289. db each time o_o [Lance]
  290. * Fixed sleep command. [Lance]
  291. * Added 'setd' support for local NPC scope (') variables. [Lance]
  292. * [Scripting Engine Update] New variables are ready to be used. [Lance]
  293. 2006/05/22
  294. * Updated skill_delayfix to return 0 for mobs since they have no skill
  295. delay other than the one specified in mob_skill_db [Skotlex]
  296. * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to
  297. Vayu for pointing it out. [Skotlex]
  298. * status_get_sc_tick will now use directly Stun's formula rather than
  299. invoking the status sc chance once. [Skotlex]
  300. * Fixed a possible null pointer in script command misc_effect [Skotlex]
  301. * Modified Investigate to take into consideration final def/vit-def rather
  302. than base values for damage adjustment. [Skotlex]
  303. * WARNING: New scripting system contains memory leak
  304. TODO: Free all scripts using script_free_code() instead of old methods. [Lance]
  305. * Excluded idle and auto-trade party members from TK_POWER list. [Lance]
  306. * Fixed compilation errors.
  307. Tidy up jobmaster for easy debugging. [Lance]
  308. 2006/05/21
  309. * Part A of the Homunculus code.
  310. This only features the structures, status_* and clif_* (packets) and is
  311. not functional yet in any conventional way, but doesn't interfere
  312. with present functionality either.
  313. Main purpose is helping me to keep my work organized. [blackhole89]
  314. * Fixed the "fake" mute status bug. [Zido]
  315. * Speed up array size calculation and deletion. [Lance]
  316. * Player must learn the skill before doing auto-spell [Lance]
  317. * Exploit prevention in clif_parse_NpcStringInput [Lance]
  318. * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus]
  319. * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus]
  320. 2006/05/20
  321. * grfio_final moved back if any of GRF overriding is enabled so servers
  322. with such configuration will not have different values after reloading. [Lance]
  323. * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance]
  324. * Abit of alterations to login-server. [Lance]
  325. 2006/05/19
  326. * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance]
  327. * Small change in pc_additem that could be fixing the current bug with new
  328. items not getting added. [Skotlex]
  329. * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex]
  330. * Likely fixed the mob-skill random picking behaviour causing infinite
  331. loops sometimes. [Skotlex]
  332. * Modified mobskill_use behaviour to pick a random starting point and check
  333. skills from that, rather than always checking from first to last. Fixes
  334. skills with high priority blocking skills lower down in the list from
  335. triggering. [Skotlex]
  336. * Updated mob ai behaviour so that mobs use IDLE state skills when their
  337. current target cannot be reached for melee fighting. [Skotlex]
  338. 2006/05/18
  339. * Added 5 config settings to adjust damage in pk-mode servers (misc.conf)
  340. [Skotlex]
  341. * Fixed mob_max_skilllvl being capped to 11! [Skotlex]
  342. * Rewrote/cleaned up several functions in storage.c [Skotlex]
  343. * Optimized pc_additem comparisons to account for items with more than four
  344. slots. [Skotlex]
  345. * Updated clif.c to enable retrieval of items from cart/storage while
  346. trading. Exception is retrieving items from the cart while vending.
  347. [Skotlex]
  348. - The reasoning is that an ongoing trade will not get "corrupted" if you
  349. earn items before it is commited (only if you lose items from your
  350. inventory), and it is an annoyance when you realize the stuff you want to
  351. trade is on the cart/storage.
  352. * skill reiteration code now does not checks for the trigger-area of the
  353. skill in the case of non-players, which means mobs can now place traps in
  354. cells adjacent to each other. [Skotlex]
  355. * Applied an experimental weather code that should lower bandwidth usage to
  356. near-none, which's only disadvantage should be the weather not clearing out
  357. until moving to another map (even when the mapflag is removed from the
  358. current map). Please test and report if there's any anomalies with it.
  359. [Skotlex]
  360. * NPC_AGIUP will now give movement boost of 50% [Skotlex]
  361. * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex]
  362. * MO_BODYRELOCATION will send the slide packet with the actual src's
  363. coordinates rather than selected tile. [Skotlex]
  364. 2006/05/17
  365. * Modified mob_can_changetarget to return true always when the new target
  366. is the provoked-by character. Fixes provoke not making the mob change
  367. target when it already is locked on another player. [Skotlex]
  368. * Added check to clear previous skill when combo time ends. Should fix TK
  369. Rankers being unable to initiate a combo with the same kick their previous
  370. combo was finished with. [Skotlex]
  371. * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex]
  372. 2006/05/16
  373. * Modified "hide woe damage" to send the number of hits rather than 1 as
  374. damage Because when the damage is less than the number of hits, the client
  375. will display MISS. [Skotlex]
  376. * Fire Pillar will now do 200%MATK damage per hit when level is >10.
  377. [Skotlex]
  378. * Blood Drain always hits now. [Skotlex]
  379. * Fixed Mob Area Skills not updating their use-time (rendering their skill
  380. delay useless) [Skotlex]
  381. * Search free cell will now skip picking the center-tile as target
  382. location. Will prevent slaves from walking on top of their master, or mobs
  383. placing stuff right under themselves with the "around" target conditions
  384. among other things. [Skotlex]
  385. 2006/05/15
  386. * Small changes to the skill.conf
  387. - Monsters now can place ground skills on top of each other by default
  388. - Land_Skill_Limit format changed and set to "Only Players" by default
  389. * When reading mapflags, when a map is set to be pvp or gvg, the other will
  390. be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex]
  391. * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the
  392. skill level is above 10. [Skotlex]
  393. * Sorted out the item_data structure, getiteminfo should work correctly
  394. now. [Skotlex]
  395. * KA* skills can now be casted on other Soul Linkers as well without the
  396. Spirit requirement. [Skotlex]
  397. * Soul Drain will now show the SP drained regardless of drain display
  398. settings. [Skotlex]
  399. * SC_COMBO state will now end in skill_attack rather than
  400. skill_check_condition (as it is required there to apply damage bonuses
  401. based on combo-casted skills) [Skotlex]
  402. * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096)
  403. [Skotlex]
  404. * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode
  405. servers. [Skotlex]
  406. * When removing a castle's owning guild, the char servers will erase the
  407. guardian data now. [Skotlex]
  408. * Changed the behaviour of immobile mobs when they can't chase their
  409. target. Rather than using a longrange skill and then unlocking, they will
  410. use an attack/angry state skill and then unlock. [Skotlex]
  411. * Some adjustments of how disguising + gm-hiding work together. [Skotlex]
  412. * Fixed clif_GlobalMessage being the exact same function as clif_message
  413. (the first should send to ALL_CLIENT and the later should send to
  414. AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex]
  415. * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex]
  416. * Characters in vending are now always considered "idle" if the
  417. idle_no_share setting is active. [Skotlex]
  418. * Players with OPTION_INVISIBLE should not be sent to clients. [Lance]
  419. * Remaining fixes for item scripts. [Lance]
  420. * Added NPC event deprecated warnings to ease debugging old scripts. [Lance]
  421. 2006/05/12
  422. * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance]
  423. * Bugfix on fake npc [Lance]
  424. * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89]
  425. * Reverted again the change that stuns the caster on Ske, Ska, Swoo when
  426. the target is a nonplayer (rather than always) [Skotlex]
  427. * Modified mob_spawn_once so that coordinates -1,-1 are "random around the
  428. player" while 0,0 are random around the whole map (regardless of whether
  429. there's a player attached or not) [Skotlex]
  430. * Knockback will no longer work on traps during woe. [Skotlex]
  431. 2006/05/11
  432. * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage
  433. [Skotlex]
  434. * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively)
  435. of 40% per level. [Skotlex]
  436. * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows.
  437. [Skotlex]
  438. * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex]
  439. * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex]
  440. * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex]
  441. * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2)
  442. [Skotlex]
  443. * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10
  444. secs (reducable) if you target a mob that already has Swoo active. [Skotlex]
  445. * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to
  446. Tanaous [Skotlex]
  447. * Added back the missing code that substracts arrows when normal-attacking.
  448. [Skotlex]
  449. 2006/05/10
  450. * Changed the state of Asura back to explosionspirits, added a hardcoded
  451. move_enable check when invoking Asura and NOT while in BladeStop or a
  452. Combo. [Skotlex]
  453. * Added back SC_XMAS to status.c, it got lost sometime during all the
  454. previous reworkings. [Skotlex]
  455. * Changed wedding costumes to use setoption rather than changebase.
  456. [Skotlex]
  457. * Modified setoption so that flag 1 or no flag adds an option, and flag 0
  458. removes it. [Skotlex]
  459. * Updated script_commands with the new behaviour. [Skotlex]
  460. * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather
  461. than 15. [Skotlex]
  462. * Users are now able to use their own dnsbl servers (login_athena) [Zido]
  463. 2006/05/09
  464. * Rewrote/cleaned up trade.c for a more clean trading implementation.
  465. [Skotlex]
  466. * Added @request commands, sends a request to all connected GMs of
  467. lowest_gm_level or above as a whisper message. Defaults to gm level 20
  468. users (UNTESTED). [Skotlex]
  469. * Modified @commands to use Meruru's code which is faster and does a fair
  470. attempt at tabulating the commands presented. [Skotlex]
  471. * Updated SKA to return a random value between 0 and 99 each time
  472. status_get_def is invoked. [Skotlex]
  473. * Updated Making Arrow to not include unidentified items in the list.
  474. [Skotlex]
  475. * Reduced drop slots from 15 to 10. [Skotlex]
  476. * Updated mob_db.sql with the current data. [Skotlex]
  477. * Updated setoption script command to receive a second (optional) argument
  478. flag. If the flag is 1, the option is added to what the player currently
  479. has; likewise using flag 2 removes only that option. No flag (or any other
  480. value) is the older behaviour of removing all other options and setting
  481. specificly what is passed. [Skotlex]
  482. * Updated script_commands information for setoption due to this change.
  483. [Skotlex]
  484. * Small fix in npc-created chat rooms to properly include the terminating 0
  485. on the chat's event. [Skotlex]
  486. * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer
  487. get reduced by 50% regardless of who is standing on the fog. [Skotlex]
  488. * monster_ai&2 will now trigger the rude-attacked skill when the mob can't
  489. move and the attacker is out of it's attack range. [Skotlex]
  490. * Added missing icon for Joint Beat [Skotlex]
  491. * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex]
  492. * Treasure chests will now be excluded from the mob-drop listings
  493. (@whodrops) [Skotlex]
  494. * Fix on pc_skill which fixes overlapping when one gets more than one bonus
  495. for the same skill. [Skotlex]
  496. * Updated main.sql's loginlog table structure. [Skotlex]
  497. * Added svn_update6533.sql to update the loginlog structure as suggested by
  498. theultramage. [Skotlex]
  499. * Cleaned up somewhat the implementation of BladeStop. [Skotlex]
  500. * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet)
  501. when crafted for non-players. [Skotlex]
  502. * Script commands sc_start, sc_start2 and sc_start4 will now start
  503. regardless of sc defense of the target player (that is, they cannot be
  504. avoided/blocked) [Skotlex]
  505. * Fixed a possible counter overflow in attacked_count, changed the var size
  506. to unsigned char since the code can handle the overflow now. [Skotlex]
  507. * Multiple targets again reduces armor defense, as reported by Tharis.
  508. [Skotlex]
  509. * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex]
  510. * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex]
  511. 2006/05/08
  512. * Reverted the change that was making ES skills stun the caster always.
  513. [Skotlex]
  514. * Removed the fixpos packet which is sent whenever you are hit while moving
  515. as Aegis doesn't sends this packet neither. [Skotlex]
  516. * ES magic will now put the caster on stun for 0.5 secs regardless of
  517. whether the skill-target is a mob or not. [Skotlex]
  518. * Added function clif_party_join_info which sends packet 0x1e9 each time a
  519. party-member joins. This packet (as redundant info as it has) should also
  520. contain the field for "adoptability", but that needs to be coded in yet.
  521. [Skotlex]
  522. * Added clif_ParseAdoptRequest which does the basic adoption handling. More
  523. checks and the reply packets still need to be coded in. [Skotlex]
  524. * Happy State and TK stances won't dispel on death now. [Skotlex]
  525. * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in
  526. skill_check_condition now. [Skotlex]
  527. * Modified TK-ranker infinite combos to behave as described by AuronX.
  528. Refer to his thread in the development section for details. [Skotlex]
  529. * Made all Soul Link Spirit skills not be castable on self. [Skotlex]
  530. * Changed rate of NPC status effect skills to 50+10*lv% base chance
  531. (guessed, but better than 100% for all levels) [Skotlex]
  532. * Changed max level of NPC status effect skills to 5 [Skotlex]
  533. * Increased max number of tries to find a random spot in maps to 1000 since
  534. some maps have so many non-walkable tiles it's hard to find one in just 100
  535. tries. [Skotlex]
  536. * status_set_viewdata will remove the Wedding Option status when you set a
  537. class that is not wedding. [Skotlex]
  538. * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex]
  539. * idletime will now be updated on attack-request, not on sit/standup
  540. [Skotlex]
  541. * Party members sitting will no longer be considered idle. [Skotlex]
  542. * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used
  543. with the disguise/undisguise script commands instead). [Skotlex]
  544. * Moved Sharp Shooting display to the block with Auto-Counter (since that's
  545. the other skill that can show critical as well) [Skotlex]
  546. * Corrected some fields in the standing still packet (guild emblem being
  547. stored as a Long when it should be Short) [Skotlex]
  548. * Modified most fields of view_data to be unsigned shorts rather than
  549. signed ones. [Skotlex]
  550. * On-Touch NPCs will now make you stop walking when you trigger them.
  551. [Skotlex]
  552. * ShadowJump/JumpKick will make you land on the target's cell now.
  553. [Skotlex]
  554. * Fixed Kaahi triggering only once per skill duration. [Skotlex]
  555. 2006/05/07
  556. * Fixed readme/changelog.html [KillerBox]
  557. * Removed old logs. [Lupus]
  558. TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index
  559. 2006/05/05
  560. * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc
  561. before sending one (as it's not required to send twice).
  562. * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps
  563. players and still continues execution to work). [Lance]
  564. * Updated item_db.sql to current. [Skotlex]
  565. * Fixed a bug in @commands, most likely the reason some people were still
  566. getting crashes. [Skotlex]
  567. * Fixed @commands not showing the last available commands (unless the total
  568. amount of commands is divisible by ten) [Skotlex]
  569. * Added a npc-script-event cache to avoid looking up event-scripts every
  570. time they need to be executed. Events cached are all those defined in
  571. script_config (on login, logout, mapchange, death, kill, level up) [Skotlex]
  572. - Since the cache holds direct pointers to the npcs/events, do NOT unload
  573. the related NPCs or you'll get dangling pointer crashes. However,
  574. @reloadscript will work fine.
  575. - Set the etc_log to on to see a summary of npcs/events loaded for script
  576. execution on startup.
  577. * The Rest bonus activated by using /doridori while in rest should now
  578. trigger with all the class tree (TK/SL/SG) [Skotlex]
  579. * Fixed Kaupe always triggering when the one who was under Kaupe was a
  580. player rather than the one attacking... [Skotlex]
  581. * /doridori now won't double the HP/SP regen of TKs, it only activates
  582. their "happy" state. [Skotlex]
  583. * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex]
  584. * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex]
  585. * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills
  586. (even if there's no other TK around). [Skotlex]
  587. * Added battle config settings view_range_rate and chase_range_rate to
  588. adjust the view-range and chase-range (range2/range3) of the mob_db without
  589. having to manually change them (battle/monster.conf) [Skotlex]
  590. * Kaupe now will only block all skills of players, for non-players, only
  591. normal attacks can be missed. [Skotlex]
  592. * Moved the Kaite spell-reflect code after the damage calculation function,
  593. so the reflected damage is exactly the damage the original target would
  594. have received. Will only trigger if the damage to be reflected is above 0.
  595. [Skotlex]
  596. * OnEquip scripts will now trigger on log-on. [Skotlex]
  597. * Infinite Endure will no longer give mdef bonus. [Skotlex]
  598. * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to
  599. start/end infinite endure. [Skotlex]
  600. * Fixed Kaahi's SP cost per heal. [Skotlex]
  601. * Now when walkdelay is set to 0, characters will stop walking when hit,
  602. but will not have any walk delay. (previously setting walk delay to 0 would
  603. not even stop characters from walking when hit) [Skotlex]
  604. 2006/05/04
  605. * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido]
  606. * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex]
  607. * Some clean-ups in the mob_ai [Skotlex]
  608. * Improved atcommand autoloot, now displays droprate in percents and notices
  609. player if autoloot is already on or off. Also simplified the code [Harbin, Kain],
  610. commited by erKURITA
  611. * Added one grace range in the mob_loot search function which should fix
  612. mob_can_reach failing when invoked with the same distance that distance_bl
  613. returned. [Skotlex]
  614. * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex]
  615. * Eska is now usable on bosses. [Skotlex]
  616. * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex]
  617. * clif_skill_failed will print out a debug line with the skill_id (since
  618. the current null_po does not helps at all to fix it) [Skotlex]
  619. * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex]
  620. * Rewrote Kaahi to behave as it should. It will heal whatever amount of
  621. damage accumulates in the time2 interval (500ms by default) after being
  622. hit. [Skotlex]
  623. * Changed skill_unit_move_unit_group to enable moving of all types of
  624. ground-skills except ensembles (fixes warmth not following you) [Skotlex]
  625. 2006/05/03
  626. * Kaahi now triggers every 500ms rather than on every hit (but it only
  627. heals if in those 500ms an attack that would previously trigger Kaahi has
  628. taken effect). In other words, it works just like before, except damage
  629. gets "buffered" into 500ms slots. [Skotlex]
  630. * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex
  631. * Knowledge will now only trigger if you logon to the memorized map, not
  632. walk into it. [Skotlex]
  633. * Corrected @whomap directly invoking msg_table[] rather than msg_txt()
  634. [Skotlex]
  635. * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong
  636. and not fix the pet issue, but I doubt it'll cause any problems that won't
  637. be fixed by making the pet move. [Skotlex]
  638. * Updated Charge Attack's state from none to move_enable. [Skotlex]
  639. * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex]
  640. 2006/05/02
  641. * Fixed standing up not really standing you up. [Skotlex]
  642. * Moved battle_consume_ammo to the end of skill_castend_damage_id,
  643. skill_castend_nodamage_id and skill_castend_pos2 rather than
  644. battle_calc_weapon_attack. They will trigger when the player's arrow_atk
  645. state is active and a ground skill was not invoked. It should fix all
  646. issues with splash/ground skills consuming ammo per target rather than once
  647. per skill use. [Skotlex]
  648. * Added structure state to the ground skills, their fields are magic_power,
  649. into_abyss and ammo_consume to indicate the states that were previously
  650. stored in val3. [Skotlex]
  651. * Implemented desperado as explained by Rockman-EXE. The skill-effect is
  652. not showing up though, I'll need some logged packets to see what's missing.
  653. [Skotlex]
  654. * Removed the unit_can_move checks in skill cast-end, they should be
  655. performed in skill_check_require when the skill's state is move_enabled.
  656. [Skotlex]
  657. * Changed extremity fist's state to move_enabled, the explosion spirits
  658. check is now hardcoded. [Skotlex]
  659. * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with
  660. Haplo. [Skotlex]
  661. * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are
  662. impossible to steal unless you have at least 100% steal-rate (where steal
  663. rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[
  664. * Cleaned up clif_parse_action_request to enable sitting/standing while in
  665. shops, interacting with npcs, etc. [Skotlex]
  666. * Kaite now works against all types of spells. [Skotlex]
  667. * Kaupe now works against all skills. [Skotlex]
  668. * Sanctuary now won't damage non-enemies. [Skotlex]
  669. * Blessing now will always give you bonus stats even if you are wearing
  670. undead armor. [Skotlex]
  671. * Modified how Rogue's treasure works so that you get +1% to your steal
  672. rate rather than +0.01% to the final rate. [Skotlex]
  673. * Rewrote Warmth to use ground-skill-units, it should behave now like in
  674. officials (implementation is not quite the same, but it should yield the
  675. same effects while consuming less bandwidth). "Stacking", as it's called,
  676. is possible now, but limited to eA's minimum timer skill interval (100ms).
  677. [Skotlex]
  678. * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than
  679. +5+lv to all stats (as explained by Playtester and Tharis on how the skill
  680. behaves). [Skotlex]
  681. * Allowed SG_FEEL memorizing the same map for all three. [Skotlex]
  682. * SC_FUSION won't end when you die now. [Skotlex]
  683. 2006/05/01
  684. * Added knockback when you run into a wall during running. However
  685. position is not being refreshed on the client yet... [Skotlex]
  686. * Fixed pc_disguise not allowing you to "redisguise". [Skotlex]
  687. * Corrected a crash when sd is null in npc_event [Skotlex]
  688. * After testing to make sure it works properly, I'm including
  689. new battle conf options to limit MVP drops. [Reddozen]
  690. * Removed OPTION_XMAS, it seems to not exist.... [Skotlex]
  691. * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO)
  692. since it has a visual effect to use. [Skotlex]
  693. * Corrected the value of OPTION_FLYING [Skotlex]
  694. * Using SG_FUSION ends Soul Linked effect. [Skotlex]
  695. * status_setviewdata will set your option accordingly when the previous/new
  696. view-class is wedding or xmas suit. [Skotlex]
  697. * Added function map_foreachinshootrange, behaves the same way as
  698. map_foreachinrange, but it also performs a "shoot-path" check before
  699. invoking the function. Used in the skill subtimer function if
  700. skill_wall_check is defined. [Skotlex]
  701. * Fixed AL_WARP displaying "Unknown Area" selections when you don't have
  702. all memo points used up. [Skotlex]
  703. * Fixed alive_count not being reset on skill unitsetting, which leads to
  704. some groups not being cleared once all their units expire. [Skotlex]
  705. * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved
  706. to skill_counter additional effect so it may trigger even on miss. [Skotlex]
  707. * SKA no longer blocks skills. [Skotlex]
  708. * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance]