Changelog-Trunk.txt 151 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656
  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/08/24
  5. * Now when a mob's adelay is set to be less than the amotion, both values
  6. will be swapped (this is an attempt to understand how those mobs actually
  7. work on aegis) [Skotlex]
  8. * script command "isrefine" will no longer return always false for equip
  9. positions above 6 (this has not been needed since the addition of the
  10. refine column to tbe item_db many months ago) [Skotlex]
  11. * Added NPC_CRITICALSLASH to the list of skills that display as a normal
  12. attack. [Skotlex]
  13. * Reverted the previous change, changed the pet capture code to try to
  14. capture a mob based on their view class rather than actual class.
  15. [Skotlex]
  16. * Fixed the md->class_ variable not being updated when a mob's class is
  17. changed. [Skotlex]
  18. * Added setting clear_skills_on_warp to specify when a character's
  19. land-based skills are deleted when the caster changes maps. Defaults to all
  20. types. [Skotlex]
  21. * Should have fixed Brandish Spear not passing the flag to skill_attack,
  22. causing it to do miserable damage. [Skotlex]
  23. * Warp Portal will no longer be removed when caster steps through it (this
  24. is left to the new clear_skills_on_warp setting) [Skotlex]
  25. * Cleaned up status_percent_change to switch equations when the target has
  26. high hp to prevent overflows, also it will directly take hp/maxhp when a
  27. rate of 100 or higher is passed to prevent calculations. [Skotlex]
  28. * Traps and Land Elemental fields are no longer automatically removed on
  29. map change (handled now by clear_skills_on_warp) [Skotlex]
  30. * traps_setting &2 no longer does anything (handled now by blah blah)
  31. [Skotlex]
  32. * Applied some change from mpeg on Ninja Skills [Toms]
  33. * Put HVAN_Explosion based on max_hp instead of current hp [Toms]
  34. 2006/08/23
  35. * Fixed mob_clone_spawn completely ignoring the mode variable. [Skotlex]
  36. * Fixed Energy Coat reducing and consuming more than it should when you
  37. have 100% SP [Skotlex]
  38. * Cleaned up getmapxy script function, also added support for type 4 so
  39. that it returns a player's homunculus position if such exists. [Skotlex]
  40. * SC_ARMOR_ELEMENT looks like gone away from status_change_start since ... rev 6791.
  41. Try to reimplement it. [Toms]
  42. * Fixed HVAN_EXPLOSION [Skotlex]
  43. * Frost Nova won't display a nodamage skill packet (still need to sort out
  44. a way to fix the splash damaged packets) [Skotlex]
  45. * Fixed a possible SIGSEGV on buildin_maprespawnguildid if the map is unknown [Toms]
  46. * Added debug on "Inifity loop" to know which script is making this loop [Toms]
  47. 2006/08/22
  48. * More fixes to the splash code. Kamaitachi and Sharpshooting should
  49. display correctly now. [Skotlex]
  50. * Fixed a crash on the mobspawn script command. [Skotlex]
  51. * Made SC_FLEET increase batk as well as watk. [Skotlex]
  52. * Fixed gcc warning [Toms]
  53. * Fixed AM_REST not closing the homunc status window [Toms]
  54. * Fixed SC_NEN according to Mpeg [Toms]
  55. * Added a ShowStatus("Terminating...\n") on login-server_sql [Toms]
  56. * Some corrections to make Tatami Gaeshi work correctly. [Skotlex]
  57. * Fixed SBR44 doing 100% more damage than it should. [Skotlex]
  58. * Some more work on the splash skill code. Now splash-damaged enemies
  59. should show no animation at all, just the damage-number, while only the
  60. targetted character should still display the full skill animation.
  61. [Skotlex]
  62. * Modified the homun-txt file-save format to separate the name from the
  63. rest of fields with tabs (like character saving does), this may fix homun
  64. save/loading when using non-latin characters on the name, but be warned
  65. that it also means the previous homun-data files are lost! (unless you
  66. replace the comma before the start of a name with a tab) [Skotlex]
  67. * getnameditem will now also work on stackable items [Skotlex]
  68. * Corrected battle_calc_weapon_attack so that all skills ignore your
  69. left-hand weapon, and that the Katar's double-attack damage bonus for the
  70. offhand damage applies ONLY on normal attacks. [Skotlex]
  71. * Fixed Resurrect Homunculus's % to 20*lv% [Skotlex]
  72. * Added SQL update which should remove \' from guild names [Toms]
  73. * Added option to disable character deletion of certain levels [Lupus]
  74. check char_athena.conf for this option format
  75. 2006/08/21
  76. * Some more cleaning up of the splash skill code. Now the passed hit value
  77. for the splash targetted mobs is 9 instead of 5, this allows multi-hitting
  78. splash skills to display the number of hits correctly. [Skotlex]
  79. * Fixed call homunc bug when the homunc was vapo and the master has change
  80. of map [Toms]
  81. * Fixed SQL-Guild Creation, guild name was escaped 2 times [Toms]
  82. * Some cleaning of the splash skills. Updated skill-attack to enable again
  83. passing of flag 0xF000 which signals that the skill level sent to the
  84. client should be -1 (no skill name shouted). Should (hopefully) clear/clean
  85. up a bunch of splash damage skill animation-related packets. [Skotlex]
  86. * Homun saving won't cap hp/sp to max hp/sp since a homun can have higher
  87. hp/sp than the one stated in the db (due to skill bonuses or status
  88. changes) [Skotlex]
  89. * Cleaned up some more the regen_data structure, so that
  90. skill/sitting-skill related data is optional (since only players have it).
  91. [Skotlex]
  92. * Fixed AM_RESURRECTION, thanks to RockmanEXE for %HP values [Toms]
  93. * Fixed HAMI_CASTLE, HAMI_DEFENCE & HLIF_AVOID [Toms]
  94. * Adjusted Glittering's success rate to 20+10*lv% [Skotlex]
  95. * Corrected isequipped() so that cards will not be tagged as "used up"
  96. unless all the specified items were found. [Skotlex]
  97. * Fixed a confusion in skill_attack using the src instead of dsrc for some
  98. calls, which was causing some problems with the KAITE check from AoE
  99. spells. [Skotlex]
  100. * Fixed ASC_BREAKER's misc damage part not having the ignore-element flag
  101. set. [Skotlex]
  102. * Moved homunc battle conf from misc.conf to homunc.conf [Toms]
  103. * Some cleaning in skill.c in regard to homun skills. [Skotlex]
  104. * Madness Canceller now stacks with other aspd bonuses, just like Berserk
  105. does. [Skotlex]
  106. * Removed config setting "muting_players", and expanded the manner_system
  107. config to specify how having negative manner (mute) affects a player (see
  108. battle/misc.conf). [Skotlex]
  109. * Expanded the pk_mode setting from no/yes to 0/1/2. 1 is normal pk_mode,
  110. if 2 is used, it makes killing players give you a loss of 5 manner points.
  111. [Skotlex]
  112. * Fixed WS_WEAPONREFINE always failing when at less than job 50. [Skotlex]
  113. * Fixed the Autosave routine not working when there's only one player
  114. online. [Skotlex]
  115. * Disabled command @rain since the client no longer supports it anyway.
  116. [Skotlex]
  117. * Fixed delitem not checking for the first slot's card, also optimized it
  118. so that it doesn't checks on the other slots. [Skotlex]
  119. 2006/08/20
  120. * Added a check during mob_db loading so that the six basic stats, max hp
  121. and max sp are never below 1, as this could cause crashes when using
  122. certain skills. [Skotlex]
  123. * Gravitation now only blocks the caster from using potions. [Skotlex]
  124. * Corrected Madness Canceller letting you walk while the effect lasts.
  125. [Skotlex]
  126. * Splitted yet again ASC_BREAKER into a two-part attack. This time the
  127. int-based damage is a MISC type attack, and gets reduced by skills as such.
  128. [Skotlex]
  129. * Fixed "int format, long unsigned int arg" warning [Toms]
  130. * Fixed a warning when using cap_value(x, 0, x) on an unsigned value [Toms]
  131. * Added clif_skill_fail for homunc to skill_castend_id & skill_castend_pos [Toms]
  132. * Fixed homunc skill 8016 not considered as homunc skill [Toms]
  133. * @useskill will now cause your homun to use the skill instead of you if
  134. the skill is a Homun skill and you have an active homunculus. [Skotlex]
  135. * Reduced the Success Chance of GS_FLING to 10+10*lv% (Playtester told me
  136. that Vicious told him the chance was much lower like that) [Skotlex]
  137. * Fixed some Homunc issues with HR servers (capping some values) [Toms]
  138. * Added @hominfo command to obtain real values (not capped ones) [Toms]
  139. 2006/08/19
  140. * Fixed @homlvup bug [Toms]
  141. * Fixed AM_REST & AM_RESU consumming SP if they fail [Toms]
  142. * Fixed homunc spawning bug (they was spawned after an AM_REST + master warp for example)[Toms]
  143. * Fixed GS_GROUNDDRIFT [Skotlex]
  144. * Increased chance of GS_DESPERADO connecting to 20% [Skotlex]
  145. * Fixed battle_calc_base_damage being called for the left hand even for
  146. non-dual-wielding attacks. left-hand damage was being set to 0 later
  147. anyway, so no exploit existed. [Skotlex]
  148. * Moved the weapon_atk_rate bonus to battle_calc_base_damage so that it'll
  149. apply correctly when dual-wielding different types of weapons. [Skotlex]
  150. * Fixed job-mask 0x100000 in the item_db enabling Dancers/Bards to use the
  151. items (0x80000 should be for them and 0x100000 should be currently unused)
  152. [Skotlex]
  153. * Fixed a possible sigsegv when deleting lif under Mental Change [Toms]
  154. * Fixed HAMI_CASTLE [Toms]
  155. * Fixed HLIF_CHANGE [Toms]
  156. * Updated HLIF_BRAIN skill [Toms]
  157. * Fixed homunculus intimacy on feeding [Toms]
  158. * Added homunculus_friendly_rate battle config [Toms]
  159. * Some compilation warnings fixed [Toms]
  160. * Added skill's required item check on homunc skills [Toms]
  161. * Add Condensed Red Potion as a required item for HLIF_HEAL [Toms]
  162. 2006/08/18
  163. * Little code cleanup on last fix [Toms]
  164. * Fixed HLIF_HEAL healing the homunc instead of the master [Toms]
  165. * Fixed HLIF_AVOID not increasing walk speed of master [Toms]
  166. * Fixed the atk_rate (Turtle General Card) bonus not working on
  167. dual-wielders. [Skotlex]
  168. * Made HLIF_HEAL a self skill that auto-selects target to caster's master.
  169. [Skotlex]
  170. * Implemented SC_BLOODLUST and SC_CHANGE, cleaned up HLIF_CHANGE [Skotlex]
  171. * Applied a correction to HVAN_EXPLOSION [Skotlex]
  172. * Fixed Homun ASPD calculation being able to underflow and give you min
  173. speed. [Skotlex]
  174. * Added monster_ai&128 to make aggressive mobs ignore that behaviour of
  175. always picking Homun targets above player targets regardless of who is
  176. closer. [Skotlex]
  177. * Fixed homun info packet being unable to display HP/SP correctly once the
  178. values are above 32k. [Skotlex]
  179. * Applied Mpeg's work on ninja [Toms]
  180. * Fixed @homlvup [Toms]
  181. * Added guild_aura (skill.conf) setting so you can specify when it works
  182. and if it works on the guild-master itself. Defaults to working all the
  183. time on everyone except GM. [Skotlex]
  184. * Little code cleanup [Toms]
  185. * Cleaned merc_hom_evolution to avoid free'ing/realloc'ing [Toms]
  186. * Fixed "args of aFree is freed pointer" on Homunc deletion [Toms]
  187. * Changed unit_free so that it receives which cleartype should be used when
  188. the character is still on a map. Used this on status_damage so that mobs
  189. that do not respawn when killed will properly display the death animation.
  190. [Skotlex]
  191. * Fixed Energy Coat consuming 10x less SP per hit than it should.
  192. * Fixed signed/unsigned comparison issues with natural heal system [Toms]
  193. 2006/08/17
  194. * Vaporize will no fail when the homun is dead. [Skotlex]
  195. * Corrected thhe double free issue that occurs when a homun dies and has no
  196. intimacy left. [Skotlex]
  197. * Fixed the charsave_method:1 saving/loading exp as signed ints rather than
  198. unsigned. [Skotlex]
  199. * Applied use of structure regen_data for a unified regen module. Natural
  200. and skill-heal is handled by this structure, while sitting-skill-heal is
  201. still player dependant (mostly because the other object types can't sit)
  202. [Skotlex]
  203. * Cleaned up the status calc code for homun by moving it from
  204. status_calc_bl_sub_homun to status_calc_homun (where it should had always
  205. been) [Skotlex]
  206. * Updated SQL files [Playtester]
  207. * Corrected map_random_dir algorithm [Toms]
  208. * Fixed homunc natural heal and little code cleanup [Toms]
  209. * Changed AM_CALLHOMUN Skill to spawn the homunc at 1 cell from his master [Toms]
  210. 2006/08/16
  211. * Fixed being unable to recast Adrenaline Rush to reset the duration
  212. timers. [Skotlex]
  213. * Cleaned up skill_get_range2 so that using range 0 for non-self skills
  214. uses the caster's attack range. [Skotlex]
  215. * Fixed AM_CALLHOMUN checking for an embryo when you have a vaporized
  216. homun. [Skotlex]
  217. * Spirit of Wizard will now consume an item 7321 each time it blocks
  218. reflected magic. [Skotlex]
  219. * Added script command jobname, retrieves a given's class name as per the
  220. appropiate msg_athena.txt entry (this command should had been added years
  221. ago) [Skotlex]
  222. * Fixed null-pointer crash on Evolving a homunculus. [Skotlex]
  223. * @produce now can make any kind of equipment [Skotlex]
  224. * Made HLIF_AVOID and HAMI_DEFENCE cause the status change on both caster
  225. and target. [Skotlex]
  226. * AM_REST shouldn't be checking for a range now (since it's a self skill)
  227. [Skotlex]
  228. * Updated mob_ai so that mobs will use their rude-attacked skill when they
  229. can't reach their current target. [Skotlex]
  230. * Fixed the default txt config making pets be saved to the homun file
  231. instead of to the pet file. [Skotlex]
  232. * Now arrow-consuming skills where your main weapon is a whip or musical
  233. instrument WILL count as arrow-type attacks, using the atk of the arrow and
  234. all related bonuses. [Skotlex]
  235. * Fixed some homun timer initialization code. [Skotlex]
  236. 2006/08/15
  237. * Applied multiple fixes which should take care of making homun save/load
  238. work on TXT now. [Skotlex]
  239. * Added Gatling Fever's batk bonus. [Skotlex]
  240. * Some cleaning in status_damage which should prevent trying to free
  241. already free'd pointers when unit_remove_map invokes unit_free (when
  242. status_damage was going to invoke unit_free anyway) [Skotlex]
  243. * Delete homunc's skills from sql when the homunc is destroyed [Toms]
  244. * Homunc Timers should be disabled when the homunc is vaporized or dead an re-enabled on call/resu [Toms]
  245. * Updated vc-project files to compile with the new int_homun files.
  246. [Skotlex]
  247. * Hopefully fixed the crash when using charsave_method = 1 [Skotlex]
  248. * Moved s_pet structure from map_session_data to pet_data, this enabled the
  249. removal of a few redundant values in the pet_data structure (name, class,
  250. equip) [Skotlex]
  251. * Cleaned up some of the pet related @/# commands, same for some script
  252. commands. [Skotlex]
  253. * Pet offensive skills who's inf value is self will be casted on the pet
  254. now (for stuff like Grand Cross) [Skotlex]
  255. * Added homun saving/loading support to char-TXT. Note that this is
  256. completely untested, so it may be as good as broken. [Skotlex]
  257. * Added a crash-fix on status_calc_bl_sub_homun to abort in case the homun
  258. has no master (need to clean up this function later) [Skotlex]
  259. * Tested char-txt load/save, it seems to be working fine, but you should
  260. STILL backup, as I only launched the server (read old character format),
  261. closed it down (saved into the new format) and relaunch it (read the new
  262. format) and it didn't give problems (but there's still the possibility of
  263. some field being read in the incorrect offset or such). [Skotlex]
  264. * Updated the char save structure for char-TXT servers so that the homun id
  265. will be saved, now also the map info (last point, save point, memo maps)
  266. are now saved using the mapindex rather than the string. BACKUP BEFORE
  267. UPDATING since this code isn't yet tested. [Skotlex]
  268. * Cleaned up a bit the char-saving code, added overflow crash prevention in
  269. case there are more memos than the max-allowed saved. [Skotlex]
  270. * AM_CALLHOMUN can now be used to recall vaporized homuns. [Skotlex]
  271. * AM_RESURRECTHOMUN will now fail when the homun is vaporized. [Skotlex]
  272. * Added SCB_DYE which marks which status-changes need a forced cloth dye
  273. change to 0 due to sprite issues. Currently only NJ_BUNSINJYUTSU's status
  274. uses it. [Skotlex]
  275. * Asura Strike now moves you to the target on fail always (unless the
  276. target does not exists or is in another map or there's a obstacle on the
  277. way) [Skotlex]
  278. * Corrected skill_attack_area hitting dead characters on it's splash range.
  279. [Skotlex]
  280. * Swapped the values for OPTION_XMAS and OPTION_FLYING. This should enable
  281. SG to show the fly animation again, even if sometimes others will see him
  282. as Santa. As for xmas cloth, it shouldn't make much of a difference since
  283. the view class is changed to christmas anyway. [Skotlex]
  284. * Made AM_CALLHOMUN and AM_RESURRECTHOMUN be like the wedding skills, where
  285. they automatically pick a spot around you. [Skotlex]
  286. * Cleaned up some the AM_RESURRECTHOMUN code. Hopefully it works now.
  287. [Skotlex]
  288. * Cleaned up some the hom evolution code. [Skotlex]
  289. * Fixed SIGSEGV with homunc save [Toms]
  290. 2006/08/14
  291. * Removed support for negative autosave intervals, instead added a
  292. minsave_interval setting which specifies which is the minimum time between
  293. character saves. Default to 100ms (map_athena.conf). [Skotlex]
  294. * Sacrifice no longer shows damage to self. [Skotlex]
  295. * When Asura fails, the skill display will still come off. [Skotlex]
  296. * Lots of cleaning of the Homun-code. Perhaps the crashes as of late will
  297. be fixed now (reusing AM_CALLHOMUN seems to be the cause of them)
  298. [Skotlex]
  299. * Increased Run's walk speed bonus to 25->50% [Skotlex]
  300. * Modified emergency_call setting to allow for more specific configuration
  301. (woe/non-woe, gvg-grounds/non-gvg-grounds, disable from nowarpto maps), see
  302. skill.conf for details. [Skotlex]
  303. * Fixed script engine allowing scripts to set a player's zeny to negative
  304. values. [Skotlex]
  305. * Fixed setting hide_woe_damage making even "miss" attacks seem to connect.
  306. [Skotlex]
  307. * When readjusting the fame-list, the last entry's id is also reset (may
  308. fix characters appearing more than once on it?) [Skotlex]
  309. 2006/08/13
  310. * Removed @itemcheck as it was totally pointless. [Skotlex]
  311. * Corrected states killer/killable being easily dispellable. [Skotlex]
  312. * Fixed the totally wrong text messages being used for @killer/@killable
  313. related atcommands, added appropiate entries to msg_athena [Skotlex]
  314. * Magic and Misc attacks will now get type "flee" when they do less than 1
  315. damage, this blocks them from causing additional status effects when they
  316. are blocked. [Skotlex]
  317. * Cleaned up a bit the Basilica code, it should now properly end when you
  318. walk. [Skotlex]
  319. * Fixed some logs not working when you enabled all logs. [Skotlex]
  320. * Corrected unmute being a level 60 command by default (should be 80)
  321. [Skotlex]
  322. * Corrected the mapif_parse_PartyChangeMap function to correctly update
  323. level-range when someone logs on/off, fixes being unable to set even-share
  324. on once it's been broken even when the characters out of range logoff.
  325. [Skotlex]
  326. 2006/08/11
  327. * Fixed Kagebunshin no Jutsu crashing for dyes > 0; though this solution
  328. might seem hackish (changing clothes colour to 0 when it starts while
  329. storing original colour back in val4, restoring original dye upon
  330. end), I believe this is the best way there currently is to solve
  331. the issue. [blackhole89]
  332. * Fixed Dancers/Bards being able to use normal attacks while performing.
  333. [Skotlex]
  334. 2006/08/10
  335. * Fixed the item group bonus not working. [Skotlex]
  336. * Fixed songs/dances always being considered overlapped with themselves.
  337. [Skotlex]
  338. * Added some additional song/dance overlap code that should correctly
  339. change the effect of songs/dances when they overlap. [Skotlex]
  340. * Added a check so that the status-change packet is always send to self
  341. when the inflicted char is a player disguised. [Skotlex]
  342. * Code cleanup on homunc, they stay in memory until player disconnect or
  343. homunc destruction [Toms]
  344. * Corrected Advanced Jobs HP bonus from 30% -> 25% [Skotlex]
  345. * Hopefully fixed family-party-even-share not breaking when a member logs
  346. out. [Skotlex]
  347. * Should have fixed the login-sql crash when passed user-name's length is
  348. beyond the limit. [Skotlex]
  349. * Changed setting attack_attr_none to affect all neutral-element attacks.
  350. Basicly, this setting is now used to determine who can hit for full damage
  351. always when using neutral-attacks (defaults to non-players) [Skotlex]
  352. * Fixed two instances in the login-sql server where the ip in the log-login
  353. table was being stored backwards. [Skotlex]
  354. * Now when a skill's range is 0 and the skill is NOT casted on self, it
  355. will take the basic weapon's range (without Vulture/Snake Eye bonus).
  356. [Skotlex]
  357. * Now when a duration is not specified, sc_start/sc_start2/sc_start4 will
  358. try to guess the duration by extracting it from the skill_db (it uses
  359. skill_get_time on whatever skill is associated to the status-change using
  360. val1 as skill-level) [Skotlex]
  361. * Some cleanups on trade_tradeaccept to prevent packets being resent when
  362. they shouldn't. [Skotlex]
  363. * Fixed syntax error in 'guild' create table statement [Toms]
  364. 2006/08/09
  365. * Fixed Asura not wasting all SP away when it fails on cast-end. [Skotlex]
  366. * Fixed homunc skill up bug [Toms]
  367. * Adjusted some the dance/song/encore code so that the source of an
  368. ensemble will always get checked, so that walking out of an ensemble skill
  369. should make it end now. However, it's likely this is not completely solved
  370. yet and will require further tweaking. [Skotlex]
  371. * Added crash protection to the mob_db txt reading when the mob_db file has
  372. lines with insufficient number of columns. [Skotlex]
  373. * Moved the class-change code from battle_calc_weapon_attack to
  374. skill_additional_effect. Alchemist summons now also have a chance of
  375. triggering polymorphing. [Skotlex]
  376. * Removed the code which was auto-setting attacks that do no damage to type
  377. FLEE, since that was disabling status-effects which should incur even when
  378. the damage was blocked. [Skotlex]
  379. * Trade requests will now fail when either character is unable to act
  380. (character in storage, vending, interacting with an npc, petrified, etc)
  381. [Skotlex]
  382. * Heard skotlex voice, changed all msg_table[] into msg_txt() in atcommand.c [Toms]
  383. 2006/08/08
  384. * Fixed the char-server not invoking the party_calc_state function when the
  385. third party-member is added to a party, hence failing to check for families
  386. and disabling even share from them unless all three relog first (state is
  387. correctly calculated when party is first loaded). [Skotlex]
  388. * Crash-protections in the mail-checking function. [Skotlex]
  389. * Some additional parenthesis on equipment check in pc_equipitem, seems to
  390. have fixed the mid/lower headgear-sprites not showing up. [Skotlex]
  391. * Added back missing state set to prevent Ankle-Snare from being retrieved
  392. after the target dies. [Skotlex]
  393. * Fixed compilation warning [Toms]
  394. * Added a check to handle Spider Web as a targetted skill. If there's more
  395. than one character on the targetted cell, a different one may get trapped,
  396. but it will mostly do as it is now. [Skotlex]
  397. * Added check to Asura so that it will move you to the target when it fails
  398. ONLY when you can cast the skill on the target (not stunned, asleep, target
  399. not hidden, etc) [Skotlex]
  400. * Changed the map_freeblock_unlock code so that when there's an "already
  401. free'd pointer" error, the memory manager will print out the invoking
  402. function rather than map_freeblock_unlock, this should help fix it up next
  403. time it happens and is reported. [Skotlex]
  404. * Casting Kaensin will clear out Suiton and viceversa now. [Skotlex]
  405. * Fixed drop-rates (@whodrops) getting duplicates when you use @reloadmobdb
  406. [Skotlex]
  407. * Fixed unjailing not sending characters to Prontera. [Skotlex]
  408. * Fixed yet again AS_SPLASHER doing full damage on all characters. Now you
  409. can use the NK split damage value in the skill_db if you want damage
  410. divided by the amount of targets rather than by 2. [Skotlex]
  411. * Fixed crash on the battle_drain functions. [Skotlex]
  412. * Cleaned up HAMI_CASTLE, HLIF_AVOID, HAMI_DEFENCE so that it's usable by
  413. other types of objects other than Homunculus. [Skotlex]
  414. * Cleaned up the Asura Strike code so that the SP/Spheres/States is not
  415. consumed when the skill fails due to Fog of Wall. [Skotlex]
  416. * When a negative delay for a skill is specified, this delay is now added
  417. on top of the character's amotion rather than adelay [Skotlex]
  418. * Modified main.sql to make the guild table allow NULL on the emblem data.
  419. [Skotlex]
  420. * Added file conf-tmpl/Changelog.txt to log config changes. [Skotlex]
  421. 2006/08/07
  422. * Fixed the login-sql server replying to the change-sex packet with the
  423. wrong gender, causing the char-server to screw-up job-change updates.
  424. [Skotlex]
  425. * Cleaned up the apparent mess that is pc_skill. Hopefully it SHOULD work as
  426. described on the docs now, this should also fix adopting not correctly
  427. giving the family-related skills. The flag value of skill should be: 0 to
  428. set the skill (if skill level is 0, this removes a learned skill), 1 grants
  429. the skill as an item bonus which is temporary, and 2 will add a skill bonus
  430. like 1, except the skill level adds up to whatever level already known of
  431. that skill. [Skotlex]
  432. * Fixed EQP_WEAPON related code messing up with both weapon AND shield.
  433. [Skotlex]
  434. * Cleaned up the Asura code so that when the skill fails your
  435. SP/Spheres/Fury are all taken away always, as well as moving you next to
  436. the target (as long as the target still exists within a reachable path from
  437. your position) [Skotlex]
  438. * SC_GUILDAURA is now removed on logout. [Skotlex]
  439. * Fixed Venom Splasher doing half-damage instead of full-damage to the
  440. "exploding" character. [Skotlex]
  441. * Hopefully fixed the party_even_share cast-overflow bug as reported by
  442. Adobe. [Skotlex]
  443. * Standarized the autosave interval setting to be always in seconds
  444. regardless of type. [Skotlex]
  445. * Moved the "bosses can't be knockback" logic from battle_calc_* functions
  446. and placed it on skill_blown. [Skotlex]
  447. * Some parenthesis cleanup before invoking battle_calc_base_damage, could
  448. be fixing the current issue with arrow attacks not adding the arrow damage.
  449. [Skotlex]
  450. * Fixed the map_search_freecell error which was making mobs fail to
  451. respawn. [Skotlex]
  452. * Added in Lupus's suggestion of not making multi-slot headgears set all
  453. slot view-ids, which supposedly causes the client to re-draw the headgear
  454. multiple times on characters. [Skotlex]
  455. * Fixed HT_BLITZBEAT hitting neutral characters when it auto-triggers.
  456. [Skotlex]
  457. * Simplified the Tatami Gaeshi code. [Skotlex]
  458. * Fixed AS_SPLASHER doing full damage on everyone except targetted char
  459. instead of the other way around. [Skotlex]
  460. * Fixed KAENSIN clearing out SUITON cells and viceversa. [Skotlex]
  461. * The spawn area is now seen as range rather than absolute for mob spawn
  462. lines. This means that x,y,10,10 will spawn the mob on a 21x21 grid around
  463. the given x,y point. [Skotlex]
  464. * Some clean up of the mob-spawn code. Now you can specify negative areas,
  465. so that a spawn location such as 100,150,0,-1 will spawn a mob always on
  466. x=100, but any Y value of the current map. [Skotlex]
  467. * Reflected damage will now also have a chance of draining hp/sp. [Skotlex]
  468. * Adjusted the order in which option/sc change packets are sent to match
  469. Aegis's [Skotlex]
  470. * Added script command getpartyleader through which you can retrieve
  471. various information of a party's leader. See doc/script_commands.txt for
  472. further information. [Skotlex]
  473. * mpeg's Ninja work [Vicious]
  474. * Adjusted Battle_check_target so that alchemist summoned mobs are
  475. targetted by everyone as long as 1. The top-level master is a player and 2.
  476. the actual attacker is not a mob-type. [Skotlex]
  477. * Added config force_random_spawn which overrides the spawn-files defined
  478. coordinates to make all mobs always spawn randomly on the map. [Skotlex]
  479. * SC_SPEEDUP0 is no longer dispellable by SA_DISPEL [Skotlex]
  480. 2006/08/06
  481. * Updated item_db.sql & mob_db.sql to latest. [Toms]
  482. * Little fixes on homunc (hp/sp are now saved and init stats changed) [Toms]
  483. 2006/08/04
  484. * Added a commented piece of code at the end of clif_parse_LoadEndAck which
  485. will update your direction to wherever you were facing before warping.
  486. Should this be the default? Nearby people DO see you facing on the same
  487. direction before warping, it's only your client that will always see you
  488. facing north on spawn (the spawn packet does contain direction
  489. information). [Skotlex]
  490. * Updated @mobinfo to display slots in the drop information. [Skotlex]
  491. * Fixed flag.elefix not being respected in battle_calc_misc_damage.
  492. [Skotlex]
  493. * Some code cleanups in battle_calc_damage. [Skotlex]
  494. * Modified bAddItemHealRate so it can receive both item-id and item-group
  495. values (since the first item-id is +500, there's no risk of mixing them
  496. up). [Skotlex]
  497. * Removed settings enemy_critical_rate, homun_critical_rate. Added settings
  498. enable_critical (defaults to specify only players), mob_critical_rate and
  499. critical_rate. The last applies to all non-mobs and non-players
  500. (battle/battle.conf) [Skotlex]
  501. * Removed settings mob_npc_warp, mob_warpportal. Replaced with setting
  502. mob_warp which specifies which types of warp can a mob step into
  503. (battle/monster.conf) [Skotlex]
  504. * Enabled Mastery damage on Soul Breaker again, moved adv katar mastery out
  505. of the mastery function so that it may apply to all skills except Soul
  506. Breaker. [Skotlex]
  507. * Changed name of the setting log_pick to log_filter since that's what it
  508. does now. [Skotlex]
  509. * Modified enable_logs so that instead of a 0/1 setting, you can specify
  510. which kind of events to log (so you can use a combination), see log_athena
  511. for the bitmask configuration. [Skotlex]
  512. * Cleaned a bit the contents of log_athena.conf
  513. * Hide/Chasewalk will again stop screaming skill name. [Skotlex]
  514. * Soul Breaker will no longer receive Mastery damage. [Skotlex]
  515. * Fixed warning:'type' might be used uninitialized in this function [Toms]
  516. 2006/08/03
  517. * Added a check to skip the experience share of characters who are dead or
  518. on another map. [Skotlex]
  519. * Reverted the previous change, chasewalk has no icon, only the str-bonus
  520. has that fist icon now. [Skotlex]
  521. * Allowed chase-walk to display a skill animation when using it. [Skotlex]
  522. * Readjusted the Chasewalk icon to be as it should be. [Skotlex]
  523. * GS_DESPERADO is now a short-range attack skill. [Skotlex]
  524. * Changed the Battle-Orders icon to be the Strength Up icon (for
  525. Chasewalk's str bonus). [Skotlex]
  526. * Fixed using the right-hand weapon's size modifiers regardless of which
  527. weapon's damage was being calculated in regards to. [Skotlex]
  528. * Simplified the ignore-size check by making the Weapon Perfection check be
  529. done when specifying the flag, also moved the size-fix property of riding
  530. spear-knights to status_calc_pc. [Skotlex]
  531. * Changed SI_CHASEWALK value to 119 as concluded by LoneWolf [Skotlex]
  532. * Corrected clif.c sending the raw mdef2 value to the client instead of
  533. first substracting the "secret vit/2" bonus from it. [Skotlex]
  534. * Added a damage cap to CR_ACIDDEMONSTRATION of INT_MAX/2 to prevent
  535. overflows. It is not capped to INT_MAX because damage increasing skills
  536. would cause it to still overflow afterwards. [Skotlex]
  537. * Fixed NPC_CRITICALSLASH not being considered as a Critical hit by the
  538. code. [Skotlex]
  539. * Added RUDE_ATTACKED_COUNT so you can easily adjust how many rude-attacks
  540. should happen before a mob uses the rude-attacked skill. Value has been set
  541. to 2 for now. [Skotlex]
  542. * Now when a mob changes target (to someone they can hit) their
  543. rude-attacked count won't be reset, but instead will be reduced by one.
  544. [Skotlex]
  545. * SC_SPEEDUP0 can now stack with the other speed raising buffs. [Skotlex]
  546. * Some adjustments so that the last-skill-used will be correctly cleared
  547. when your combo-time ends. [Skotlex]
  548. * Fix a bug in atcommand_charspeed [Toms]
  549. * Fixed a logic error preventing from cooking anything [DracoRPG]
  550. * Cleaned up the last NJ update code. [Skotlex]
  551. * Added @ command `charspeed` [Skotlex]
  552. * Fixed @jailfor using MAP_PRONTERA as jail instead of MAP_JAIL [Skotlex]
  553. * Removed case for GS_SPREADATTACK on damage packets to see if the skill
  554. displays correctly now. [Skotlex]
  555. * Corrected Deluge/Volcano/V. Gale overlaps so that the placing tiles are
  556. removed, NOT the ones who were already placed. [Skotlex]
  557. * Made SC_SPEEDUP0 and SC_SPEEDUP1 use different icon IDs, to fix
  558. icon-confusion when both are enabled at a time. [Skotlex]
  559. * Mob rude-attacked count is not reset now on picking a new char (gotta
  560. investigate this further) [Skotlex]
  561. * Changed atoi to strtoul for guild-experience's field [Toms]
  562. * Fixed a bug in int_storage.c, temp array doesn't have the good size [Toms]
  563. 2006/08/02
  564. * Modified yet again SC_SILENCE after iRO tests from Entwined on IRC.
  565. Silence now ONLY blocks skills from being used, it will not stop on-going
  566. casts. [Skotlex]
  567. * Updated status_cast_cancel to also include silence (so the cast bar is
  568. cancelled if you are silenced during it) [Skotlex]
  569. * Updated the way SC_SILENCE works. From what I remember (from previous
  570. forum discussions) it: 1- Always blocks skills from being used. 2- Will
  571. only block a skill when the cast-bar ends IF the skill is targetted. If
  572. anyone wants to debate to get this changed, make an appropiate forum topic
  573. in the svn development area to discuss. [Skotlex]
  574. * Added a check in the walking code when triggering skills.
  575. NPC_SELFDESTRUCTION will no longer cancel walking, it will instead resend
  576. the walk packet, this effectively causes the mob to start walking
  577. (clientside) while the cast-bar is showing. [Skotlex]
  578. * Fixed a logic error on battle_get_master which was causing infinite
  579. loops.. [Skotlex]
  580. * Fixed homunculus error message [Toms]
  581. * Rewrote pc_payzeny to not use doubles, it may more accurately prevent
  582. charging a player more zeny than they can withhold. [Skotlex]
  583. * Fixed failing to create Deadly Poison Bottles damaging 50% of your max
  584. life instead of 25% [Skotlex]
  585. * Added the missing status-change flags to SC_FREEZE to signal it should
  586. modify def and magic def [Skotlex]
  587. * Little add on NJ_HUUMA [Toms]
  588. * Merged Mpeg's work on Ninja skills [Toms]
  589. * Fixed Martyr's Reckoning having a cap damage of 32k. [Skotlex]
  590. * Now you can teleport in Thanatos Boss room, but you can't respawn there [Playtester]
  591. * Fixed Defender Raising Walk speed instead of diminishing it. [Skotlex]
  592. * Added a check on status-change load to prevent loading speed-affecting
  593. status when their speed adjustment is 0 (prevents division by zero)
  594. [Skotlex]
  595. * Code cleanup & optimization on guild part of char-server [Toms]
  596. * Fixed script code data not being free'd if a player quits in the middle
  597. of a script. [Skotlex]
  598. * Modified run_script so that when there are leaks, it will report the
  599. place where run_script was called from as source rather than the inner code
  600. of run_script (for debugging purposes) [Skotlex]
  601. * Made recursive master check the default (otherwise it messes skill -> pet
  602. -> player kind of herarchies) and cleaned up some the battle_get_master
  603. code to prevent infinite loops in the weird case someone specifies that
  604. their master is itself. [Skotlex]
  605. * Recoded the GuildAura code to use val3 & val4, allowing much greater stat
  606. bonuses (in case someone wants to get Guild Skill level 20 or something
  607. crazy like that) [Skotlex]
  608. * Updated battle_check_target so that all alchemist summoned mobs can be
  609. target by everyone. [Skotlex]
  610. * Cleaned up skill_check_condition_mob_master_sub, it will now count both
  611. total number of summoned mobs and amount that belong to the same type.
  612. [Skotlex]
  613. * Corrected AM_CANNIBALIZE so it will fail if you already have plants of
  614. another type out. [Skotlex]
  615. * Using NPC_SELFDESTRUCTION no longer will make the caster stop walking.
  616. [Skotlex]
  617. * Removed SI_GUILDAURA, and replaced it with SI_LANDENDOW, now
  618. Volcano/Deluge/V. Gale will get that funky icon instead. [Skotlex]
  619. * Changed clif_hominfo to receive both sd and hd as parameters
  620. * Some redundancy cleaning in mercenary.c [Skotlex]
  621. * Moved updating of sd->mercenary.hp from merc_damage to pc_makesavestatus.
  622. [Skotlex]
  623. 2006/08/01
  624. * Miscellanous fixes which make the Marine Sphere self destruction work as
  625. best as I can. It only has one flaw: It self-destructs instantly after
  626. walking because if I make it use self-destruction with a cast-bar,
  627. client-side the object stops moving inmediately... [Skotlex]
  628. * Modified unit_walktoxy and NPC_RUN to enable running even when the caster
  629. does not has the MD_CANMOVE bit on. [Skotlex]
  630. * PF_MINDBREAKER will now silently fail if you try to use it on someone who
  631. already has the status active. [Skotlex]
  632. * Cleaned up yet again skill_landprotector, now new cells of
  633. Deluge/Volcano/V.Gale will delete previous cells when they are recasted on
  634. top of each other. [Skotlex]
  635. * Summoned Marine Spheres no longer get the MD_CANMOVE bit. [Skotlex]
  636. * Cleaned up some more the SC_JAILED code [Skotlex]
  637. * merged in atcommands jailfor, jailtime, charjailtime. Thanks to Meruru
  638. and Coltaro for the code. [Skotlex]
  639. * Cleaned the code of atcommands jail and unjail [Skotlex]
  640. * Be warned that the code MAY contain bugs as I adjusted it to save the
  641. character's position before jailing, allowing the automatic unjailing to
  642. warp you back to the exact spot you were at before being jailed. [Skotlex]
  643. * Should have fixed the cooking sets not displaying all cooking available
  644. items. [Skotlex]
  645. * Figured out and fixed the issue with Volcano/Deluge/Violent Gale not
  646. really working. Thanks to Mpeg for noting it out. [Skotlex]
  647. * Modified Self Destruction, so that Marine Spheres in non-versus maps will
  648. hurt only enemies, while in all other situations this skill will hurt
  649. everyone around them. [Skotlex]
  650. * Expanded setting debuff_on_logout so that &1 removes negative buffs and
  651. &2 removes positive buffs. [Skotlex]
  652. * Food status boosts will no longer end on death, but they will end when
  653. you respawn or logout. [Skotlex]
  654. * Added battle config file status.conf, moved some settings from skill.conf
  655. and battle.conf to it since they are entirely Status-Change related.
  656. [Skotlex]
  657. * Added the missing lines to enable script command "kickwaitingroomall"
  658. [Skotlex]
  659. * Magic Rod's can-act delay will no longer be applied when you absorb a
  660. spell. [Skotlex]
  661. * Fixed Don't Forget Me increasing speed instead of decreasing it. [Skotlex]
  662. * Modified setlabel so that the script engine barks when you are trying to
  663. use the same label name as a constant or variable name. [Skotlex]
  664. 2006/07/31
  665. * Fixed the subnet 0 mask being reset to 0 when someone goes up on the fame
  666. rankings. [Skotlex]
  667. * Updated Poison React chance to counter and number of counters as per
  668. skill description updates. [Skotlex]
  669. * Fixed Sharpshooting being counted as a magic attack, and hence, using
  670. your MATK as base damage. [Skotlex]
  671. * Fixed NPC_STOP id value in skill_cast_db [Skotlex]
  672. * Bladestop will no longer stop when you push either of the characters
  673. around. [Skotlex]
  674. * Fixed Enchant Poison having a near 100% chance of poisoning target on
  675. attack. [Skotlex]
  676. * Little fix on duel [Toms]
  677. * Added possibility to restrict duel usage to same map [Toms]
  678. * Merged mpeg's fix on ninja skills [Toms]
  679. * Corrected a status_get_race call which should be status_get_race2 in misc
  680. attacks. [Skotlex]
  681. * Moved the Devotion code to the top of the SC list in status_damage,
  682. meaning that now stuff like being asleep or confused won't end if you are
  683. hit, but the damage is absorbed by devotion. [Skotlex]
  684. * Added the Soul Link of Rogue speed bonus to Chase-Walk. Since there's no
  685. information of how much the bonus should be, it currently is a conservative
  686. 10%. [Skotlex]
  687. * Fixed a possible crash in the main script engine when restoring previous
  688. script. [Skotlex]
  689. * Fixed sleep.tick not being set back to 0 before resuming execution, which
  690. leads to scripts that are continously executed even when they already ended
  691. (they do nothing but waste resources) [Skotlex]
  692. * Fixed a pair of free -> aFree used on stacks, which would lead to memory
  693. manager reporting leaks where there aren't. [Skotlex]
  694. * Removed incorrect "Waterball range+1 when standing on suiton" feature.
  695. [Skotlex]
  696. * Corrected the Speed update code to prevent sending "walk to xy" packets
  697. twice when the affected character is a player. [Skotlex]
  698. * Expanded mob can't move warning to print out where this mob was stuck at
  699. (map, x,y) [Skotlex]
  700. * Fixed segmentation fault in status_change_end, vd wasn't initialized [Toms]
  701. 2006/07/30
  702. * NPC_INVISIBLE will now use Cloaking of a level +9 of the used skill
  703. level, so that at level 1 they can attack, use skills and receive no
  704. walking penalty. [Skotlex]
  705. * Mob casted Sanctuary will no longer always heal it's targets regardless
  706. of element/race [Skotlex]
  707. * Status change packets will now use as criteria for sending the actual
  708. view_class instead of player/not-player. This will fix status-changes
  709. displaying improperly on clones, and also possible crashes with disguised
  710. players. [Skotlex]
  711. * Merged mpeg's fix on ninja skills and SA_VOLCANO,SA_DELUGE,SA_VIOLENTGALE [Toms]
  712. * Added bNoMiscDamage setting so you can specify misc-damage blocking from
  713. skills. Modified battle_calc_damage so that even Pressure and similar
  714. skills will be affected by this setting. [Skotlex]
  715. * GS skill updates/fixes [Vicious]
  716. * Force all users offline in sql when char-server starts [Toms]
  717. 2006/07/29
  718. * Removed ugly struct cast in login.c [Toms]
  719. * New version of buildin_query_sql which accept more than one column and
  720. can return the number of rows. See script_commands.txt for more details. [Toms]
  721. * Fixed nullpo in merc_hom_skillup [Toms]
  722. * Added a return value to buildin_rid2name if rid is invalid [Toms]
  723. * Made the SQL ping interval default to 7 hours. [Skotlex]
  724. * Made skill_unitsetting remove the group when no unit-cells were placed
  725. down. basicly this means that if landprotector blocks all tiles, the group
  726. will be removed from memory, preventing said group from counting to the
  727. total number of skills you can set. [Skotlex]
  728. * Fixed segmentation fault in script engine when calling something which is not a function [Toms]
  729. * Fixed segmentation fault in script engine when activating DEBUG_RUN flag [Toms]
  730. 2006/07/28
  731. * Added Ishizu's code to check ammo type on attack. No more using Grenade
  732. rounds with Guns. [Skotlex]
  733. * offensive heal/sanctuary will only happen when the source of the heal is
  734. a player, mob/pet casted heal will now always heal regardless of target.
  735. [Skotlex]
  736. * Shield Chain will now ignore the 'ice-pick' defense piercing bonus.
  737. [Skotlex]
  738. * Self destruction will now hit all characters in range, not just enemies.
  739. [Skotlex]
  740. * Cleaned up the NJ update code: [Skotlex]
  741. - Restored code which was removed (stuff like SC_SKA)
  742. - Fixed possible crashes on some NJ skills if used by non-players.
  743. - Fixed most NJ magic spells doing more damage than they should.
  744. - Fixed ZenyNage being able to do more damage than zeny you have.
  745. - Cleaned up skill setting code for Suiton and Kaensin
  746. * Some cleaning of battle_drain, Evil Druid card should work now. [Skotlex]
  747. * Made status_damage allow damaging of objects not on a map, this should
  748. fix pet-catching making the mob never respawn again. [Skotlex]
  749. * Casted nothl to (unsigned int) in sprintf functions, IP is 32bits and sql field the same :) [Toms]
  750. * Fixed "warning: `list' might be used uninitialized in this function" in char/char.c@3032 [Toms]
  751. * Fixed "uninitialized local variable 'i' used" in skill.c and "warning: suggest explicit braces to avoid ambiguous `else'" in battle.c [Toms]
  752. * Fixed "warning: long unsigned int format, unsigned int arg" in parse_login (login_sql\login.c) [Toms]
  753. * Fixed sign warnings in login/login.c [Toms]
  754. * Fixed "conversion from 'double' to 'int', possible loss of data" [Toms]
  755. * Fixed "warning: redefinition of [ushort/uint/ulong]" [Toms]
  756. * Fixed duplicate case value on NJ_SUITON [Toms]
  757. 2006/07/27
  758. * Fixed a memory leak when there exists more than one user function with
  759. the same name, added the appropiate warning when this happens. [Skotlex]
  760. * Added reporting source file when an npc shops item's price is
  761. exploitable. [Skotlex]
  762. * The picklog will now record negative values for items sold to npcs.
  763. [Skotlex]
  764. * Added inmediate position and hp-bar update when a character joins a
  765. party. [Skotlex]
  766. * Added missing SC information to NPC_CHANGEUNDEAD [Skotlex]
  767. * Added config setting party_update_interval so you can specify how often
  768. the party-mate minidots should be updated (defaults to 1 sec). [Skotlex]
  769. * Removed a bunch of broken comments in skill.c [Skotlex]
  770. * Synced the script.c file with as much data as possible from jA's:
  771. [Skotlex]
  772. - A lot of functions were moved around, a bunch of indentation and
  773. space-usage changes were done to make it easier to diff against their
  774. files.
  775. - Miscellanous addition and corrections were applied.
  776. - Largest one is likely a restructuring of run_script_main, which hopes to
  777. solve the memory leaks.
  778. - script engine now uses the setjmp functions to restore memory state when
  779. there's an error parsing scripts, which means that script errors won't
  780. cause the map-server to inmediately bail out anymore.
  781. - NOTE that the amount of changes is pretty extensive, so DON'T USE THIS on
  782. a live server. Update only to help test and debug to see if the script
  783. engine memory leaks are gone.
  784. * Added a cleanup routine on shutdown to remove all characters from memory
  785. for whom the save ack has not returned from the char-server yet. [Skotlex]
  786. * Now when you set the guardian's HP, if the guardian is spawned, it's HP
  787. will be updated accordingly (and if you set it to 0, the guardian is
  788. killed) [Skotlex]
  789. * Added functions status_set_hp/status_set_sp to set hp/sp to a given
  790. value. Applied usage of these on the Berserk and Soul Change code.
  791. [Skotlex]
  792. * Added config setting "party_hp_mode" (battle/party.conf) which determines
  793. method to use to update party-mate hp bars. Aegis style is to update HP
  794. bars whenever HP changes, while eAthena style is to update it together with
  795. the map party dots. Defaults to aegis style. [Skotlex]
  796. * Fixed packet 0x22a having the manner and opt3 packets in inverted
  797. offsets. [Skotlex]
  798. * Readded the check which prevents Cloaking from activating when your
  799. learned level is less than 3 and you aren't next to a wall. [Skotlex]
  800. * Some cleanups to the Frenzy/Berserk status change, it should probably
  801. work correctly now. [Skotlex]
  802. * Removed a redeclared variable i in the parsing of the fame list (char-sql
  803. server) which seems to be the cause of the random memory corruptions.
  804. [Skotlex]
  805. * Updated item_db.sql to latest. [Toms]
  806. * Fix homunc & code cleanup [Toms]
  807. - Timer problems on delete_timer
  808. - Intimacy problem (overflow & new values)
  809. - Homunc deleted if intimacy < 0
  810. - base exp is now given to master
  811. - Homunc sometimes not saved
  812. 2006/07/26
  813. * Fixed a memory leak when reading the item_db txt. [Skotlex]
  814. * Applied the necessary changes to make @partyoption reflect it's changes
  815. on the alt+p window. [Skotlex]
  816. * Modified party_item_share_type config setting so that using 1 disables
  817. item-sharing from non-mob loot (player dropped items or pet loot) and 2
  818. enables round-robin instead of random sharing. Using 3 obviously is
  819. enabling both 1 and 2. [Skotlex]
  820. * Added battle_get_master which returns the master bl of a given object.
  821. [Skotlex]
  822. * Recoded battle_check_target to use battle_get_master, the src/target
  823. switch has been split into two, so that actual target and master target are
  824. seperately treated (same for source). [Skotlex]
  825. * Added support for "sc_end -1" which will clear all status changes. Added
  826. the constant SC_ALL so you can use in scripts "sc_end SC_ALL;" instead.
  827. [Skotlex]
  828. * @pettalk will now fail when muted. [Skotlex]
  829. * Enabled changing of equipment while stunned/asleep/petrified/etc [Skotlex]
  830. 2006/07/25
  831. * Cleaned up run_script_main to properly free previous stack-data when
  832. running scripts. Note that scripts may still leak memory when run by
  833. non-players and they don't reach the "END" state, however I am not sure how
  834. this case should be handled, so it's left as it is for now. [Skotlex]
  835. * Added a missing ntohl call in the loginlog code. [Skotlex]
  836. * Added a check when buying from npcs to allow buying of item_avail items.
  837. [Skotlex]
  838. * Fixed duel accept invite sending the packet before the duel data is set
  839. (resulting in a packet that noone receives). Thanks to Toms for finding it
  840. out. [Skotlex]
  841. * Fixed a possible crash when you dual-wield and the total damage is 0.
  842. [Skotlex]
  843. * Added Toms's perl scripts item_db.pl and mob_db.pl (they are in tools/),
  844. they convert the txt databases into sql. [Skotlex]
  845. - Usage: "script" < "input file" > "output file". eg: ./tools/item_db.pl < db/item_db.txt > sql-files/item_db.sql
  846. * Updated the sql files since now it's quick [Skotlex]
  847. 2006/07/24
  848. * Re-updated the mob_db.sql to latest. [Skotlex]
  849. * Cleaned up the skill_landprotector function to correctly block only magic
  850. skills from being placed on land protectors. [Skotlex]
  851. * Corrected itemdb_group so that it will not return the random item givers
  852. (should give priority to actual item groups, so that the item heal bonuses
  853. work correctly) [Skotlex]
  854. * Cleaned up the Mistress Card related code so that the no-gemstone bonus
  855. reduces item requirements by one rather than totally skip them. [Skotlex]
  856. * Cleaned up the logs "can log"function to use the IT constants. Also
  857. corrected the "only log large amounts" setting not working on negative
  858. values (trades). [Skotlex]
  859. * Adjusted skill_castfix_sc so that Suffragium will get consumed even on
  860. instant cast skills, but Memorize won't. [Skotlex]
  861. * BladeStop will now end when either of the characters is moved (knocked
  862. out?) around. [Skotlex]
  863. * Moved the Zeny penalty code from respawn to pc_dead. [Skotlex]
  864. * Added a check to prevent Deluge/Volcano/Violent Gale from being placed on
  865. top of each other. Reverted the previous 'fix' where atk was being
  866. increased based on armor element rather than element of attack. [Skotlex]
  867. * Removed the noreturn mapflag check from script command warp. [Skotlex]
  868. * Homuculus cleanup [DracoRPG]
  869. - Replaced nullpo's in parse functions by silent checks
  870. - Removed server-side effect for menu option 0 (view status window...
  871. why does the client send us the packet since we don't care? -_-)
  872. - Rewrote intimacy underflow checks so they are really effective (no
  873. need to check if an unsigned is < 0, it won't work... check before!)
  874. * fixed unban unblocking players as well. [Skotlex]
  875. * Fixed Volcano/Deluge/Violent Gale increasing damage based on element of
  876. attack instead of defense element of attacker. [Skotlex]
  877. * Cleaned up the code of Magic Rod, fixed it not giving SP. [Skotlex]
  878. * Moved the code of Hermod and Basilica to castend_pos2 so it should work
  879. now. [Skotlex]
  880. * Modified the code of Ankle Snare so the status ends on unit's time-limit
  881. rather than when the snared object moves away. [Skotlex]
  882. * Re-worded the water check of ST_WATER skills. [Skotlex]
  883. * Allowed sc-cast reductions to be processed even when cast-time is instant
  884. (to let suffragium end even on instant-cast skills) [Skotlex]
  885. 2006/07/23
  886. * Modified setting skillrange_by_weapon (skill.conf) to be a
  887. per-object-type setting instead of yes/no. The default now is that
  888. weapon-based skills will take the attacker's range for non-players.
  889. [Skotlex]
  890. * Changed the default of skillrange_by_distance to include homunculus.
  891. [Skotlex]
  892. * Fixed buildin_isequip not working correctly with non-cards. [Skotlex]
  893. 2006/07/22
  894. * Updated mob_db.sql to latest. [Skotlex]
  895. * Applied Toms's suggested corrections to homun code. [Skotlex]
  896. * Corrected Cannibalize/Marine Sphere ignoring the selected summon spot.
  897. [Skotlex]
  898. * Fixed looting pets ignoring the item pick-up priority of other players.
  899. [Skotlex]
  900. * Should have fixed a signess warning in login txt. [Skotlex]
  901. 2006/07/21
  902. * Added blocking of @me when muted or in berserk status. [Skotlex]
  903. * Corrected the @follow timer not being deleted on logout. [Skotlex]
  904. * Applied the homunculus code fixes provided by Toms. [Skotlex]
  905. * battle_check_target will now tag homunculus as invalid target when the
  906. source is a skill-type object. [Skotlex]
  907. * Added a check on pc_equipitem so that when the client specifies to equip
  908. a weapon on the right hand when the left hand is available, the weapon will
  909. be sent to the left hand instead (when dual-wielding is possible,
  910. obviously). Same for the left/right accessories. [Skotlex]
  911. * Added the necessary checks so that Suiton makes Fogwall have double
  912. duration, and to make water-requiring skills to consume their cells.
  913. [Skotlex]
  914. * Corrected the loadmap event description to specify that the mapflag
  915. required is actually "loadevent", NOT "loadmap"! [Skotlex]
  916. * Now when the char-txt server does not finds a requested party, it will
  917. clear out said party id of all characters (will help prevent massive
  918. spamming/overhead when for some reason the party file needs to be deleted).
  919. [Skotlex]
  920. * Combo skills (inf = self, inf2 = no target self) no longer check range if
  921. you use them while your attack-timer is still active. [Skotlex]
  922. * Added back a map_freeblock call in skill_delunitgroup which caused a
  923. memory leak when removed... [Skotlex]
  924. * Added a check to prevent Blind from ending while standing on a fog of
  925. wall. [Skotlex]
  926. * The mob Slave ai will be executed now even when the slave has a target.
  927. This will allow for "instant" warping to the master when it changes maps or
  928. teleports. if the slave has a target already, it won't unlock it and chase
  929. back to the master or anything like that. [Skotlex]
  930. * Removed a couple of checks that prevents item ids above 20000. However,
  931. remember that the max id is still ~32k or the client is the one who's gonna
  932. crash! [Skotlex]
  933. 2006/07/20
  934. * Added source reporting when you do an invalid int&str or str&int
  935. operation on a script. [Skotlex]
  936. * Fixed the intif party creation packet having the incorrect size sent,
  937. hence causing the leader's level to be read as garbage (which caused the
  938. "impossible to even share" bug). [Skotlex]
  939. * Added pc_check_weapontype to do a proper skill weapon check that takes
  940. into account dual-wielding. That is, if a skill can be used with
  941. daggers/axes, you'll be able to use the skill when dual-wielding them.
  942. [Skotlex]
  943. * Corrected Cloaking level 1-2 not letting you move across walls. [Skotlex]
  944. * updated cloaking code so that when you set "enable cloaking without
  945. walls", the code will consider you as "always next to a wall", thus you get
  946. the wall-speed bonus always. [Skotlex]
  947. * Applied the fix to homunculus name saving... [Skotlex]
  948. * Added battle config settings agi_penalty_target and vit_penalty_target,
  949. they define which object types will get vit/flee reductions when
  950. multi-targetted and defaults to only players (battle/battle.conf) [Skotlex]
  951. * Added the dummy intravision case for the changeoption packet 0x229
  952. [Skotlex]
  953. * Corrected Fog of Wall so that all targetted offensive skills (not only
  954. those who do damage) will fail on cast-end 75% of the time. [Skotlex]
  955. * corrected @homlevel up and one entry in the homun exp table as reported
  956. on the forums by Albator. [Skotlex]
  957. * Added the SQL fix to Homunculus skill learning/saving bug [DracoRPG]
  958. * Added a status_check_skilluse on skill_attack_area call to prevent splash
  959. damage skills from hitting hidden/trickdead/etc characters. [Skotlex]
  960. * Corrected fog of wall to behave as best known currently: [Skotlex]
  961. - Only takes effect when targetting a character inside it
  962. - -50hit/-75% damage when using normal-ranged attacks
  963. - -25% damage from all damage skills
  964. - 75% chance of all targetted damage skills of failing.
  965. * Should have fixed @refine applying multiple times to equipment that uses
  966. multiple equip slots. [Skotlex]
  967. 2006/07/19
  968. * Fixed the inf code update breakage which was blocking all offensive
  969. skills. [Skotlex]
  970. * Added battle setting homun_critical_rate (defaults to 0) [Skotlex]
  971. * Removed enemy_str/pet_str/enemy_perfect_flee and replaced them with
  972. enable_perfect_flee which specifies which objects can have perfect flee and
  973. enable_baseatk which specifies which objects can have a base attack value
  974. (both in battle.conf) [Skotlex]
  975. * Modified the targetted skill logic to enable offensive skills to be
  976. targetted at party/guild members if the appropiate inf2 value is set.
  977. [Skotlex]
  978. * Added checks to make adding items to inventory/cart fail when a char is
  979. in finalsave state. [Skotlex]
  980. * Fixed parse_names on irc.c crashing when receiving a null argument.
  981. [Skotlex]
  982. * Modified the parsing of the names line, since some servers will send @
  983. instead of = when separating the information. [Skotlex]
  984. * Fixed the homun creation sql statement. Why noone else did so before?
  985. [Skotlex]
  986. * When enabling/disabling hiding/unhiding an npc, if the npc is a warp, it
  987. will use clearchar and spawn packets instead of changeoption. Thanks to
  988. Toms for the fix. [Skotlex]
  989. * Corrected Trim chars to block 'enter', as explained by the Ultra mage.
  990. [Skotlex]
  991. * When the client passes account version 0, the login server will set it to
  992. 1 now. [Skotlex]
  993. * Corrected the HP bar scaling when HP is above Short Max. It should
  994. display fine for any HP value now. [Skotlex]
  995. * Added a check when the mob's adelay is shorter than the amotion, in which
  996. case the adelay will be changed to the amotion value. [Skotlex]
  997. * Some minor mapflag changes. [MasterOfMuppets]
  998. 2006/07/18
  999. * Added atcommand @partyoption, lets you alter the party item-distribution
  1000. type on the go. Usage is "@partyoption <pickup share> <item distribution>",
  1001. where both arguments can be 0/1, yes/no, etc. [Skotlex]
  1002. * Updated @changeleader and @partyoption to use msg_Athena entries.
  1003. [Skotlex]
  1004. * Added character 013 (enter) to the list of characters that are always
  1005. removed from new character names. [Skotlex]
  1006. * Fixed a crash when trying to extend TK's infinite combo feature. [Skotlex]
  1007. * Corrected Poison React to counter regardless of distance, and to use the
  1008. skill's 50+5*lv% counter chance (instead of 100%). [Skotlex]
  1009. * Corrected Venom splasher's splash damage [Skotlex]
  1010. * You now can't move/attack/use-skills when using Cloaking of a level less
  1011. than 3 [Skotlex]
  1012. * Fixed compilation of mercenary.c [Skotlex]
  1013. * Corrected Fog of Wall's "targetted spells fail 75% of the time" feature
  1014. by making it behave like GTB, that is, you just get a skill-failed on
  1015. cast-end, no skill-animation at all. [Skotlex]
  1016. * Added a proper check to make aggressive mobs never override homun targets
  1017. regardless of distance. [Skotlex]
  1018. * Removed a bunch of homun-related variables that are not needed at all.
  1019. The alive condition is removed, now the code checks for the hp value to
  1020. know if the homun is alive or not. [Skotlex]
  1021. * Cleaned up a bit the skill-id function, homun skill checks (such as delay
  1022. and skill-lv learned) should be correct now. [Skotlex]
  1023. * Added a proper check to make aggressive mobs never override homun targets
  1024. regardless of distance. [Skotlex]
  1025. * Fixed giving the 100% damage bonus when no-splash-targets are found in
  1026. the blown path to Grandcross instead of Bowling Bash. Bowling Bash damage
  1027. equation becomes then +50*lv% rather than +40*lv% when there's no
  1028. splash-damage (the 50*lv% figure is custom, all we know is that level 10
  1029. does 600% instead of 500% damage). [Skotlex]
  1030. 2006/07/17
  1031. * Updated mob_db.sql to current mob_db.txt data. [Skotlex]
  1032. * The char-server will allow off-line character saves when said char is
  1033. tagged for final-save (this is the scenario when the char-map reconnect).
  1034. [Skotlex]
  1035. * Should have fixed the Cart Termination damage code to be scaled correctly
  1036. when you change the max cart weight. Thanks to The Ultra Mage for the error
  1037. clarification. [Skotlex]
  1038. * Implemented Grandcross weird property where if there's noone on the path
  1039. it'll hit twice for the skill's reported damage, and when there is (or you
  1040. can't knockback the target) it'll do a splash attack that hits twice for
  1041. 500% to all affected targets. [Skotlex]
  1042. * Some cleaning of the combo code. TK Rankers will now get their combo-time
  1043. extended each time they trigger a kick, enabling them to do "unlimited
  1044. combos". [Skotlex]
  1045. * Modified the autosave function to use a sweep across the player db
  1046. instead of across connected clients. This will cause non-connected players
  1047. (like autotraders) to also be saved on a regular interval, may help with
  1048. possible data-loss from said characters on unclean shutdowns. [Skotlex]
  1049. * Removed the code that forces aggressive mobs to go after a Homun instead
  1050. of their master (no reason why there should be such a condition). [Skotlex]
  1051. * Some sign quest map flag updates [MasterOfMuppets]
  1052. * atcommand_follow is now more verbose. [Adam]
  1053. * Manually added int_homun.c to the VS8 char_sql project, *should* work [DracoRPG]
  1054. * Orn's fix to the very critical skill level up bug [DracoRPG]
  1055. * Updated mob_db.sql to current mob_db.txt data. [Skotlex]
  1056. * Added Orn's lil fix on homun [Vicious]
  1057. * Added Homunculus system, enjoy! [orn aka Nylou]
  1058. - WARNING: This currently only works with the SQL version, as the TXT char-server
  1059. has no code for it at the moment. You TXT server won't break, but the char-server
  1060. will complain of an unknown packet if you try to get an Homunculus
  1061. * Updated nomemo mapflags based on info from http://ro.doddlercon.com/images/memo.jpg [Poki#3]
  1062. 2006/07/15
  1063. * Small change in conf/battle/player.conf to say that 199 is max aspd allowed
  1064. (Haplo says that there are many reports of having over 200 is giving errors) [Evera]
  1065. 2006/07/13
  1066. * Kaahi no longer shows the heal effect to everyone. [Skotlex]
  1067. * Eska no will cause defense to change randomly every second. [Skotlex]
  1068. * Tuned up some more NJ_KAENSIN based on Tharis's information. [Skotlex]
  1069. * Corrected NJ_KAENSIN as per description. [Skotlex]
  1070. * Fixed a leaking map_freeblocklock on skill_del_unitgroup. [Skotlex]
  1071. * Changed the default save interval to 5 minutes. Added support for
  1072. specifying fixed save-intervals by using negative values. [Skotlex] EG:
  1073. - Save interval set to 300 (5 minutes): all characters will be saved in
  1074. equal time-slots, so that everyone is saved every 5 minutes regardless of
  1075. number of players online.
  1076. - Save interval set to -1000 (1000 ms): One character will be saved every
  1077. second, regardless of amount of characters online.
  1078. The new fixed-time-slots method is meant for larger servers, so that they
  1079. can control the saving-induced stressed on the char-server.
  1080. * Fixed @storeall and @charstoreall failing when the target character
  1081. already had the storage open. [Skotlex]
  1082. * Reverted temporarily the Cart Termination equation until it can be
  1083. fixed... [Skotlex]
  1084. * Fixed script command "recovery". [Skotlex]
  1085. 2006/07/12
  1086. * Fixed a small typo in my code [Zido]
  1087. * Added negative value in bonus exploit fix for more stat bonuses [Zido]
  1088. * Fixed exploit in pc_bonus there are no checks that check that the value being
  1089. added onto a status don't make it go below zero, which means if you have a mineral
  1090. card and reset stats it reduces your base attack to lower than zero, making it
  1091. go up to 64000. Fixed by adding a check for SP_BASE_ATK, although i recommend
  1092. doing it for other status bonuses also [Zido]
  1093. * Recoded NJ_BAKUENRYU to behave as I understand it best from the
  1094. skill-description (since Haplo told me this skill doesn't really has video
  1095. information or anything...) [Skotlex]
  1096. * Fixed NJ_TATAMIGAESHI to use ground-tiles rather than "for each in path"
  1097. calls. The skill should be working correctly now, except for the fact that
  1098. the correct "unit id" is missing (this is what would give the ground tile
  1099. it's correct display). Temporarily it is using 0xba until the correct value
  1100. is found. [Skotlex]
  1101. * Added back the undead check to turn undead/resurrection to prevent
  1102. damaging non-undead targets, removed it from the battle damage section.
  1103. [Skotlex]
  1104. * Resurrection will now silently fail when used on non-undead + not-dead
  1105. characters. [Skotlex]
  1106. * Poem of bragi/magic String's base delay reduction at level 10 (or above)
  1107. is now 50% instead of 3*lv%. [Skotlex]
  1108. * status_damage will no longer fail when the target is not on a map AND the
  1109. flag is 2 (charge rather than damage). Fixes SP-draining status changes
  1110. ending suddenly when in-between maps. [Skotlex]
  1111. * Fixed the IP value being apparently incorrectly casted before inserting
  1112. into the loginlog table on "connect success" events. [Skotlex]
  1113. * Fixed Cart Termination's damage. [Skotlex]
  1114. * Added the missing check to remove character from memory when logging out
  1115. and using the charsave_method which saves character map-server-side.
  1116. [Skotlex]
  1117. 2006/07/11
  1118. * Fixed inverted check which was preventing you from buying more than 1
  1119. from any stackable item.... [Skotlex]
  1120. * Should have fixed the crash in intif gm message... [Skotlex]
  1121. * Fixed GTB card only working while you had a status-change active.
  1122. [Skotlex]
  1123. * Fixed being unable to compound cards in armor. [Skotlex]
  1124. * Made @monsterignore be an universal ignore. Means you cannot be targetted
  1125. as an enemy by anything. Also added alias "@battleignore" which does the
  1126. same as monsterignore. [Skotlex]
  1127. * Fixed magic power setting your min matk as max-matk. [Skotlex]
  1128. * Modified the packets involved in @fakename in hopes it'll refresh
  1129. correctly on nearby clients now. [Skotlex]
  1130. * Fixed clif_parse not checking for func_parse before sending data to the
  1131. connected clients. This in turn required various code-rewrites in: [Skotlex]
  1132. - duel related messaging functions (added clif targets DUEL/DUEL_WOS).
  1133. - intif whisper to gm function
  1134. - day/night timers
  1135. - Rewrote the parse_console function to stop allocating/deallocating memory
  1136. on every call.
  1137. - Modified chrif_charselectreq to receive the player's ip among the data.
  1138. * Added function clif_disp_message, which is the same as
  1139. clif_disp_onlyself, except you can specify the targets (it sends a
  1140. guild-chat packet) [Skotlex]
  1141. * Fixed the subele bonus (elemental reduction) being applied to the element
  1142. of the attacker instead of the element of the attack. [Skotlex]
  1143. * mob skills now won't trigger on unit_stopwalking calls. [Skotlex]
  1144. * Coded @reset. [Skotlex]
  1145. * Reenabled @changesex [Skotlex]
  1146. * Added function pet_create_egg which handles creating pet eggs correctly
  1147. (when passed item id is indeed a valid petegg). Applied this on @createitem
  1148. and getitem. [Skotlex]
  1149. * Cleaned up code of @item [Skotlex]
  1150. * Cleaned up the itemdb_isequip functions. itemdb_isequip will now return
  1151. if the item is equipable by players, itemdb_isstackable returns if the item
  1152. can be stacked, and itemdb_isidentified returns if the item should drop
  1153. identified. [Skotlex]
  1154. * Added defines CARD0_PET/CARD0_FORGE/CARD0_CREATED to identify if a given
  1155. item has "invalid" cards, added define function itemdb_isspecial to
  1156. simplify this check. [Skotlex]
  1157. * Removed itemdb.c considering item ids above 20000 as invalid. [Skotlex]
  1158. * Cleaned up script commands getitem and card-counting related ones.
  1159. [Skotlex]
  1160. * Cleaned up a bit more pc_isequip [Skotlex]
  1161. * Added script function warpportal(x,y,targetmap$,targetx,targety).
  1162. This creates warp portals as in the skill unit as a volatile alternative
  1163. to static warp portals. [blackhole89]
  1164. * Modified the login-sql server to do the ip-ban check only on the
  1165. auth-packets instead of on every packet. [Skotlex]
  1166. 2006/07/10
  1167. * Corrected Warp Portal being unable to warp people who are standing on it
  1168. on the moment it triggers. [Skotlex]
  1169. * Fixed @follow stopping the moment you are warped. [Skotlex]
  1170. * Fixed pc_additem messing with the equip field of the passed item data.
  1171. Fixes the famous "equip stuff on your arrow slot" bug. [Skotlex]
  1172. * Fixed cart-termination crashing the server if you used level 16 of it.
  1173. [Skotlex]
  1174. * Fixed check_connect_login_server check in char-sql server. Fixes
  1175. char-server not reconnecting to the login server. [Skotlex]
  1176. * Login-sql server will no longer change an account's state to "7" when
  1177. banning a player. This should fix being able to use @ban to clear out a
  1178. @blocked player. Players will now be identified as banned only through the
  1179. banned-until timestamp. [Skotlex]
  1180. * Fixed a crash when using Gospel... [Skotlex]
  1181. * The on-place function won't be invoked on setting ground skills if the
  1182. group's tick is greater than the current tick. As Buuyo pointed out, this
  1183. should fix Sanctuary and Gospel taking effect inmediately instead of after
  1184. "x" amount of ms as they should. [Skotlex]
  1185. * Added login-char packet 0x2737. Sets all characters offline (login-server
  1186. side). [Skotlex]
  1187. * Cleaned up char server "set all offline" implementation to remove only
  1188. characters from the map-server from which the packet was invoked. It will
  1189. also now correctly kick/set-character offline from the map-server if they
  1190. are connected. [Skotlex]
  1191. * Cleaned up the char-sql reconnect code. It no longer sets everyone to
  1192. offline. [Skotlex]
  1193. * Removed setting "kick_on_disconnect", servers will no longer kick
  1194. characters out when there's a disconnection. Instead, it'll use the most
  1195. logical approach: Set characters into a "lost" state when there's a
  1196. disconnection, on reconnect, resent the list of online-characters, do a
  1197. sync, and let the difference be characters to be removed. Also, the
  1198. map-server won't release character data until it's saved and the ack
  1199. returns from the char-server to prevent data loss (all this data is resent
  1200. on reconnect for saving anyway). [Skotlex]
  1201. * Added a check in pc_equipitem so that when switching weapons and you have
  1202. the skill_range_by_weapon setting active, the skill info block (which
  1203. includes range) will be resent when the new weapon to equip has a range
  1204. different than the previous one. [Skotlex]
  1205. * One closer inspection, removed that clear in itemdb_reload for a foreach
  1206. call again. And modified itemdb_load to scrap the dummy item entry from the
  1207. item_db and replace it with proper data for the item. [Skotlex]
  1208. * itemdb_reload will clear the itemdb before reloading info instead of only
  1209. clearing the scripts now. [Skotlex]
  1210. * Some cleaning of skill_castend_pos2, fixed Gospel, and a
  1211. map_freeblock_unlock misplacement. [Skotlex]
  1212. * Sense/Estimation will now display the mob info window to all party
  1213. members in the same map. [Skotlex]
  1214. 2006/07/08
  1215. * Fixed the new addeff structure not working well with SC_STONE (because
  1216. SC_STONE is 0, which was by default not handled as a valid value).
  1217. [Skotlex]
  1218. * Added back the TF_MISS walking speed bonus to assassin type classes (how
  1219. did that got lost?) [Skotlex]
  1220. * Fixed mobinfo displaying exp as signed ints rather than unsigned.
  1221. [Skotlex]
  1222. * Added status_check_visibility to check if an object is within range of
  1223. view of another. Nothing more, nothing less. It's used by unit movement to
  1224. check whether you can continue chasing your target or not when the "chase
  1225. target" directive is given. [Skotlex]
  1226. * Fixed the char table having party/guild_id as smallint when they need int
  1227. there. Thanks to hermematon for pointing it out (use svn_ugprade7580.sql)
  1228. [Skotlex]
  1229. * Applied k3dt fixes to pet-hatching, ice-wall check, and wedding skills.
  1230. [Skotlex]
  1231. * Fixed endow skills calling the skill no damage packet twice. [Skotlex]
  1232. * Fixed a crash on warpwaitingpc when the chat-room is empty. [Skotlex]
  1233. 2006/07/07
  1234. * Fixed the Warm Skills [Skotlex]
  1235. * Removed the debug message when a player logs out and is removed from
  1236. memory, it is working fine (tested normal logging off and autotrade). [Skotlex]
  1237. * Corrected the pet-armor field of the pet not being updated on
  1238. equip/unequip of accessories, making them not show up inmediately. [Skotlex]
  1239. * Status_calc_bl will no longer stop you from attacking/walking when the
  1240. mode is changed unless the new mode no longer includes
  1241. "can-attack"/"can-move" respectively. [Skotlex]
  1242. * Should have fixed clif_item_sub to properly store pet egg/armor data.
  1243. There should be no more "random refine levels" bugs related to these.
  1244. [Skotlex]
  1245. * itemdb_exists will now return NULL for item_id 0. [Skotlex]
  1246. * Added a check to free a character from memory when changing map servers.
  1247. [Skotlex]
  1248. * Okay, added a chrif_save_ack packet to the char-server so now the map
  1249. server will know once a character was "final saved", and only then the
  1250. character will be removed from memory. On char-server reconnection, all
  1251. chars that are in final-save state are resent to save (if they are still in
  1252. memory, it's because the ack hasn't gotten here from the char-server). This
  1253. should effectively block all dupe problems due to heavy inter-server lag,
  1254. however as it's untested, it currently prints some debug messages when
  1255. people are saved and then removed from memory. Need testers so this can be
  1256. debugged and merged to stable! [Skotlex]
  1257. * Now, when the login-char connection is cut, the char-server won't set
  1258. everyone offline on reconnect, instead it will send the list of online
  1259. accounts to the login server. [Skotlex]
  1260. * Modified the error on the char-sql server to set chars online when it
  1261. receives a save packet from a character tagged as offline (until it can be
  1262. figured out why this is happening) [Skotlex]
  1263. * Fixed signed/unsigned comparison issues in the char txt/sql server.
  1264. [Skotlex]
  1265. * Fixed the cooking success chances. Thanks to Ishizu Chan. [Skotlex]
  1266. * Added a temporary band-aid to prevent executing the script of non-arrows
  1267. when they are equipped on the arrow-slot (until the actual cause of why
  1268. pc_unequipitem is not working correctly is discovered/fixed) [Skotlex]
  1269. 2006/07/06
  1270. * Modified the party_data structure on the map server to remove some
  1271. redundant data. Added a party_data structure on the char-server to hold a
  1272. more complete set of information about parties. Added to the party_member
  1273. structure the class of each member so that the map server can do the
  1274. appropiate checks even if the character is on another mapserver/offline.
  1275. Due to the format changes in the party structure, txt servers will have to
  1276. wipe their party file... (sql save format has not been changed) [Skotlex]
  1277. * Added function char_family to check if there's a family state given the
  1278. three character ids, instead of doing individual checks all the time.
  1279. [Skotlex]
  1280. * Rewrote all the item restriction functions so that they will take into
  1281. account slotted card restrictions as well. [Skotlex]
  1282. * Added no_skill_delay setting, when set, affected object types will have
  1283. the minimum skill delay for all skills. Defaults to mobs, since they
  1284. don't have skill delays. [Skotlex]
  1285. * Cleaned up pc_equipitem. When dual wielding or equipping accessories, if
  1286. the client actually specifies one of the two positions, it will be taken
  1287. into account (now, does the client actually does this?) [Skotlex]
  1288. * Fixed GrandCross and similar skills. [Skotlex]
  1289. * FogWall will now also affect the caster. [Skotlex]
  1290. 2006/07/05
  1291. * Updated NJ_KAENSIN by Saycyber21 [Vicious]
  1292. * Updated @refine to take account of MAX_REFINE, thanks to Omega... GM
  1293. Designer. [Skotlex]
  1294. - Also optimized the @refine loop for better performance.
  1295. 2006/07/04
  1296. * Fixed compile issue for NJ_BAKUENRYU, by Saycyber21. [Vicious]
  1297. * Implemented Saycyber21's some NJ work. Untested. :D [Vicious]
  1298. * Implemented cooking chances. Chance of success is 70% - 7*(dish-lv)% +
  1299. 12*(cooking set-lv)%. Exception: When using the legendary cooking set,
  1300. success chance is 100% regardless of dish. [Skotlex]
  1301. * Added battle config setting emergency_recall, specifies behaviour of that
  1302. skill (skill.conf): 0 - Disabled. 1 - can't be used in nowarpto maps. 2 -
  1303. Can be used everywhere. [Skotlex]
  1304. * Removed the NPC/Dance/Song inf2 check of AbraCadabra. whether a skill can
  1305. come out or not is entirely decided by the abra db file now. [Skotlex]
  1306. * Added structure s_addeffect to handle status change additions. Cleaned up
  1307. relevant code. It is now possible to specify ANY status change, not just
  1308. the basic ones. NOTE that the code is proof-read, but untested! [Skotlex]
  1309. * Added support for bonus3 bAddEff/bAddEffWhenHit as follows: [Skotlex]
  1310. bonus3 bAddEff/bAddEffWhenHit, <SC value>, <rate>, <target flag>.
  1311. Target flag is 0: Self. 1: Enemy. 2: Both.
  1312. * Added these descriptions to doc/item_bonus.txt [Skotlex]
  1313. * Added a check when joining a chat to make sure the target object is of
  1314. type BL_CHAT. [Skotlex]
  1315. 2006/07/03
  1316. * Cleared up the bAutoSpellWhenHit description in doc/item_bonus.txt
  1317. [Skotelx]
  1318. * Fixed Phantasmic Arrow and Magical Bullet not being correctly tagged as a
  1319. ranged arrow-type attack. [Skotlex]
  1320. * Updated help.txt and help2.txt, thanks to Inuyasha for providing the
  1321. updated files. [Skotlex]
  1322. * Char-server SQL won't perform the reconnect cleanup routines when
  1323. kick_on_disconnect is disabled. [Skotlex]
  1324. * Renamed summons_inherit_effects to summons_trigger_autospells as the
  1325. setting now only makes the attacks of the slaves trigger the autospells of
  1326. the master (as it should be). [Skotlex]
  1327. * Corrected code capping no_spawn_on_player to 50 when the max should be
  1328. 100. [Skotlex]
  1329. * Warmth will dispel when warping now (or else the effect is left on the
  1330. ground) [Skotlex]
  1331. * Fixed reading of the refine_db not working right when MAX_REFINE is
  1332. increased from 10. [Skotlex]
  1333. * Some more cleaning to the implementation of Abracadabra [Skotlex]
  1334. * Fixed a compile warning in login sql/txt [Skotlex]
  1335. * Fixed pc_makesavestatus not setting your logout position. [Skotlex]
  1336. * Fixed two dances becoming BA_DISSONANCE instead of DC_UGLYDANCE.
  1337. [Skotlex]
  1338. * Added the missing +100% damage modifier of Enchant Deadly Poison.
  1339. [Skotlex]
  1340. * Fixed SkillStatusChangeTable not working correctly for Homun/Guild
  1341. skills. [Skotlex]
  1342. 2006/06/30
  1343. * Fixed a typo in msg_athena.conf, "This item cannot be drop" -> "This item cannot be dropped" [MasterOfMuppets]
  1344. * Added a check to prevent equipped items from being traded. [Skotlex]
  1345. * Added UF_SONG (0x400) to differentiate songs from dances. [Skotlex]
  1346. * Added preliminar support for making a Song+Dance turn into BA_DISSONANCE
  1347. cells. Beware of potential bugs as it's untested. [Skotlex]
  1348. * Added mapflag "nochat" to prevent chatting rooms from being created.
  1349. [Skotlex]
  1350. * Corrected some of the sleep checks when the char id does not matches with
  1351. the char-id expected by the script engine. [Skotlex]
  1352. * Cleanup in itemheal related code, fixed the item heal group bonus not
  1353. working on Groups beyond 7. [Skotlex]
  1354. * Fixed pet's loot not being moved to your inventory on logout. [Skotlex]
  1355. 2006/06/29
  1356. * Made the map server send list of characters online to the char-server on
  1357. reconnection regardless of "kick_on_disconnect" setting, as otherwise, a
  1358. temporary disconnection would make the char-server tag all characters
  1359. offline and refuse to save them afterwards. [Skotlex]
  1360. * Fixed guild storage being "eternally in use" if you quit/logout before
  1361. closing it. [Skotlex]
  1362. * Ending SC_CLOAK/SC_HIDE/SC_CHASEWALK will now trigger ontouch npcs.
  1363. [Skotlex]
  1364. * [Fixed]
  1365. - Scripting system screwing up script position after mixing timers with menus.
  1366. - NPC attached AI mobs display as alive when dead.
  1367. - View data not updating after buildin_unitdeadsit.
  1368. [Improved]
  1369. - NPCE_LOADMAP to execute after all (area) objects are sent to the player.
  1370. - Simplified scripting system. sd will now use pointer to the script state itself.
  1371. [Lance]
  1372. 2006/06/28
  1373. * changed:
  1374. dynamic_pass_failure_ban_how_many:from 3 to 7
  1375. dynamic_pass_failure_ban_how_long:from 60 to 5
  1376. as in official servers. [Musashiden]
  1377. * Added a check in script command "set_option" so that invoking
  1378. "set_option(0)" removes Cart/Peco/Falcon, as expected by scripts. [Skotlex]
  1379. * Added trade-range check on trade start. [Skotlex]
  1380. * Added inf2 4096 (INF2_ALLOW_ENEMY) which is to be used in conjunction
  1381. with INF2_PARTY_ONLY/INF2_GUILD_ONLY when said skill should ALSO be allowed
  1382. to be used on enemies. [Skotlex]
  1383. * Cleaned up a bit the code for @item [Skotlex]
  1384. * Fixed character/storage being sent to be saved TWICE when you logged out
  1385. while the storage is opened. [Skotlex]
  1386. * Added save_settings map config. Specifies after which events do
  1387. characters get saved (defaults to all): 1 - Trade successful, 2 - Vending
  1388. transaction, 4 - Closing storage/guild storage, 8 - hatching a pet.
  1389. [Skotlex]
  1390. * Changed the mob drop rate adjust function to receive a signed int
  1391. argument. Probably will fix those drops with 0% becoming 100% [Skotlex]
  1392. * Corrected Musical Strike having a different damage equation from Throw
  1393. Arrow. [Skotlex]
  1394. * Added state rewarp to players. It gets set when a pc_setpos call is
  1395. triggered while the player is changing maps so that when the player finish
  1396. loading the map, it is inmediately rewarped to where it has been
  1397. rewarped/recalled to. [Skotlex]
  1398. 2006/06/27
  1399. * Map server will now resent the whole list of online characters to
  1400. char-server on reconnect when the kick_on_disconnect setting is active.
  1401. [Skotlex]
  1402. * Cleaned up and optimized the IP sync code. New login_athena config
  1403. setting sync_ip_interval specifies how often to sync the ip. The default is
  1404. 0 (disabled). [Skotlex]
  1405. * Added mapflag "loadevent", now load-map script events will ONLY trigger
  1406. on maps with this mapflag on, rather than every map. [Skotlex]
  1407. * High Jump can now be used in all versus maps. [Skotlex]
  1408. * Added Kaite's opt3 value, taken from jA [Skotlex]
  1409. * Added state dirty == 2 to storages. Signals when a storage was sent for
  1410. final saving. Said storage is removed from memory after the ack from the
  1411. char-server, and they are sent to save if the map/char servers reconnect
  1412. before the ack arrives. In short: they are guaranteed to be saved after a
  1413. char logs out. [Skotlex]
  1414. * Put pay_arche.gat in the "no experience lost" mapflag file. [MasterOfMuppets]
  1415. 2006/06/26
  1416. * Corrected the element of hunter traps. [Skotlex]
  1417. * Deadly Poison now also reduces def2 by 25% [Skotlex]
  1418. * Cleaned up a bit skill_moonlit, Moonlit Petals should work correctly now.
  1419. [Skotlex]
  1420. * Fixed @mi displaying always 0 instead of the mob's class. [Skotlex]
  1421. * Rough implementation of Ground Drift according to description and jA
  1422. info. [Skotlex]
  1423. * Implemented Tatami Gaeshi using skill description and jA implementation
  1424. for reference. [Skotlex]
  1425. * Merged Mitternacht's max_heal/max_heal_lv config settings. [Skotlex]
  1426. * Removed support of packet 0xc3 on the new packet versions. Thanks to
  1427. Meruru for pointing out they aren't being used anymore. [Skotlex]
  1428. * Autospells will now again check for the skill's nk value, so that skills
  1429. tagged "nodamage" skills will not trigger autospells. [Skotlex]
  1430. * Corrected clif_item_sub so that pet eggs will correctly be sent as
  1431. equipment (fixes them showing up "broken" and with random refine levels)
  1432. [Skotlex]
  1433. * [Added]:
  1434. - buildin_unitkill just for kicks. [Lance]
  1435. 2006/06/23
  1436. * [Optimized]:
  1437. - Setting of variables with defined scope in some frequently executed script
  1438. events.
  1439. [Added]:
  1440. - Missing script_require_trigger flags for some power hungry events.
  1441. * Updated mob_db.sql and item_db.sql to latest. [Skotlex]
  1442. * Modified pc_setoption so that it will correctly update sprite AND clothes
  1443. color when mounting/unmounting changing into/from xmas/wedding sprites.
  1444. [Skotlex]
  1445. * Allowed itemdb_exists to return the dummy item. Enables "invalid" items
  1446. to be sold, traded, dropped, etc. [Skotlex]
  1447. * Corrected ASC_BREAKER. Int-based damage is applied after attribute fixes
  1448. and before card reductions. The skill now completely disregards left
  1449. hand weapon. [Skotlex]
  1450. * Standarized PF_MEMORIZE to be 50% cast time on all skills (instead of
  1451. -50% for targetted skills and -66% for ground skills >.>) [Skotlex]
  1452. * Cleared up the comment on what item_check does and how it works.
  1453. [Skotlex]
  1454. * Changed setting for skill_nocast flag 16. It is no longer a "pk-mode map"
  1455. setting, it's now a clone-forbidden skill. That is, skills with the flag 16
  1456. will never be copied by clones. If you use a PK-mode server, use flag 2 now
  1457. to forbid skills from common maps. [Skotlex]
  1458. * Default skills from not being cloned are Magnus Exorcism and Turn Undead.
  1459. * The map search free cell will now use the size of the map # of tries
  1460. before giving up when the spawn area is the whole map. Added a check to
  1461. inmediately give up when the number of spawn retries has reached the max
  1462. specified (no_spawn_onplayer = 100). [Skotlex]
  1463. * Cleaned up a bit the clone code to account for the unit flags
  1464. UF_NOPC/UF_NOMOB when the skill is not ground-based (accounts for self
  1465. skill that causes a ground-tile to be placed, like Dances). [Skotlex]
  1466. * Added pc_bonus_autospell_del, gives support for removing autospell
  1467. effects. When a negative rate is specified, it will decrease the chance of
  1468. casting (eg: You have two different cards with autospell Heal +20% each,
  1469. then do autospell -30. The second card will be cancelled, and the first one
  1470. will become Heal +10%) [Skotlex]
  1471. * npc_timers now will not restore the previous timer data when there's no
  1472. players attached (when it's strictly an npc timer). This should reenable
  1473. the old behaviour of getnpctimer returning the total ellapsed time since
  1474. "startnpctimer" even after the last label has been reached. However, this
  1475. behaviour won't apply to player-attached timers. [Skotlex]
  1476. * [Fixed]:
  1477. - MAPREGSQL overloading SQL table with temperory map registries.
  1478. - Incorrect perfomance calculation for MAPREGSQL loading and saving. [Lance]
  1479. 2006/06/22
  1480. * Guessed and added support for the packets 0x22a (idle) and 0x22b (spawn).
  1481. This should complete the required packets for PACKETVER 7. [Skotlex]
  1482. * Added support for the PACKETVER 7 packets in the "dummy" current
  1483. intravision implementation. [Skotlex]
  1484. * Fixed @autoloot being off by 0.01% when entering a manual value.
  1485. [Skotlex]
  1486. * Restored the "Secret" behaviour of Blast Mine and Claymore Trap where
  1487. each target is hit N times (where N is the number of mobs in the splash
  1488. area at the moment of triggering). [Skotlex]
  1489. * Updated the tools/stackdump script to also handle sig-plugin generated
  1490. backtraces. Now it will also auto-determine whether the exe needs a .exe at
  1491. the end or not. Help me test it as I want this script on stable NOW :X
  1492. [Skotlex]
  1493. * Usage is "stackdump <login/char/map> <txt/sql> [number]". When a number
  1494. is given, sig-plugin stackdumps are assumed, otherwise it parses the normal
  1495. stackdump as before. [Skotlex]
  1496. * Corrected autoloot so that you can specify rate with decimal precision
  1497. ("@autoloot 0.01" should work) [Skotlex]
  1498. 2006/06/21
  1499. * [Removed]:
  1500. - Redundant mob name copying. (it's already copied in mob_parse_dataset) [Lance]
  1501. * [Fixed]:
  1502. - Compilation warnings and errors.
  1503. [Improved]:
  1504. - Changed and moved IP sync status messages to elaborate more. [Lance]
  1505. * Tested and fixed resolve_hostbyname. Applied said function around most of
  1506. the code where needed. Removed includes for the OS/network system pretty
  1507. much from every file (our socket.c file should handle this) [Skotlex]
  1508. * Made the GM mute request bypass the manner_system setting. [Skotlex]
  1509. * Applied use of parse_hostbyname() in chrif.c to fix compilation errors.
  1510. [Skotlex]
  1511. * status_percent_change will now account for when the target's max hp/sp is
  1512. above INT_MAX. [Skotlex]
  1513. * [Added]:
  1514. - DNS (WAN) sync for those pesky disconnections (dynamic ip renewal). [Lance]
  1515. 2006/06/20
  1516. * Some cleaning up of OPTION related code. OPTION_XMAS and OPTION_FLYING
  1517. really ARE the same value clientside! (totally stupid), therefore I've
  1518. opted from removing the flying animation since it really just displays as
  1519. Xmas for others (and the correct fix involves adding a bunch of
  1520. class-change packets...) [Skotlex]
  1521. * Updated skill_require_db to place the Zeny requirements of ZenyNage and
  1522. Fling. [Skotlex]
  1523. * Fixed crash when non-players use ZenyNage. Added the correct Zeny check
  1524. in skill_check_condition, fixed the skill so that it's damage is based on
  1525. whatever zeny is specified in skill_require_db. [Skotlex]
  1526. * Can-act delay will not be reset when warping now. [Skotlex]
  1527. * Fixed Quagmire not altering walking-speed. [Skotlex]
  1528. * Silence now blocks skills both on begin/end casting. [Skotlex]
  1529. * Updated status_calc_bl so that when walking speed changes, the character
  1530. is made to rewalk so that the new speed takes effect inmediately. [Skotlex]
  1531. 2006/06/19
  1532. * Added Ayothaya to nopenalty and nopvp mapflags. [Evera]
  1533. * Combo-used Skills with State "move_enable" will now override the "can't
  1534. move delay". Fixes Break-Fall -> Jump-Kick. [Skotlex]
  1535. * Some more cleanups of battle_calc_damage to account for absorbed damage
  1536. reductions. [Skotlex]
  1537. * Moved back Soul Drain code from mob_dead to skill_counter_additional_effect.
  1538. Now we are back to where the skill animation does not shows, but you DO
  1539. get SP T.T' [Skotlex]
  1540. * Some cleanups and corrections in battle.c to account for negative
  1541. (absorbed) damage. [Skotlex]
  1542. * Fixed fame-list updating crashing char-sql server when the given char-id
  1543. just got into ranking. [Skotlex]
  1544. * Added missing Arunafeltz maps with information from NLZ [Evera]
  1545. 2006/06/18
  1546. * [Fixed]:
  1547. - Typo in status.c add_sc() using 'skill' instead of 'sk' as index, resulting in
  1548. filling the SkillStatusChangeTableArray with junk data.
  1549. - > NEEDS CONFIRMATION < Ends casting if player is knocked with freezing/stun/whatever
  1550. - Typo in parse_frommap. [Lance]
  1551. * [Fixed]:
  1552. - clif_initialstatus using SHRT_MAX instead of USHRT_MAX for status_point.
  1553. * [Temperory Fixed]:
  1554. - Crashing of SQL char-server in parse_frommap case 0x2b01. [Lance]
  1555. * [Removed]:
  1556. - Large part of scripted mob control commands are removed.
  1557. - Large part of scripted player control commands are removed.
  1558. - Scripted mob slaves changing master ID.
  1559. [Added]:
  1560. - Unit control commands.
  1561. - CALLBACK_NPCCLICK for scripted mobs, added this to db/const.txt too.
  1562. - Macro RECURSIVE_MASTER_CHECK in battle.c
  1563. [Modified]:
  1564. - buildin_skilluseid and buildin_skillusepos -> buildin_unitskilluseid
  1565. and buildin_unitskillusepos.
  1566. - md->callback_flag to short (double word). [Lance]
  1567. 2006/06/17
  1568. * Devotion absorbed damage will now appear to come from oneself (instead of
  1569. the original attacker changing directions towards the Crusader) [Skotlex]
  1570. * Updated clif_refres to send inventory, cart, and weight info. [Skotlex]
  1571. * Fixed intif_guild_memberinfoshort to not leave a dangling pointer when
  1572. someone logs out <.< [Skotlex]
  1573. * Changed some mapflags related to the eye of hellion quest. [MasterOfMuppets]
  1574. * [Added]:
  1575. - buildin_checkcell, buildin_mobwarp, buildin_pcattack.
  1576. [Improved]:
  1577. - buildin_skilluseid and buildin_skillusepos to accept a few more arguments.
  1578. - mob_script_callback to return sucess value [Lance]
  1579. * Fixed the party HP packets to send max HP 10000 and scale HP accordingly
  1580. when the player's HP doesn't fits in the packet's field. Fixes HP bars not
  1581. correctly displaying the % of life when max HP is above 32k. [Skotlex]
  1582. 2006/06/16
  1583. * Fixed option value being reset'ed on login (fixes cart/peco/falcon being
  1584. lost) [Skotlex]
  1585. * Corrected @speed to alter your base speed instead of battle one. Means
  1586. the change remains for much longer (until status_calc_pc is invoked, which
  1587. could be due to equipping/unequipping stuff) [Skotlex]
  1588. * Modified the bNoMagicDamage/bNoWeaponDamage bonuses to be a 0-100
  1589. setting. Meaning you can do bonus bNoMagicDamage,50; To make all magic
  1590. damage be reduced by half. This bonus stack, so two cards with
  1591. bNoMagicDamage,50 will give magic immunity. [Skotlex]
  1592. * Removed setting gtb_pvp_only and replaced it with gtb_sc_immunity which
  1593. specifies the threshold before the bNoMagicDamage starts blocking support
  1594. statuses as well. ie: gtb_sc_imunity: 75 will mean that "bonus
  1595. bNoMagicDamage,70;" reduces magic damage by 70%, but does not blocks heal
  1596. or support status, while "bonus bNoMagicDamage,80;" does. [Skotlex]
  1597. * Removed db_tables.sql as it's no longer used. [Skotlex]
  1598. * the mvp_sd is removed when the mob is the emperium and there's no
  1599. killer/exp-awarded (assumed killed by script), this prevents the on-kill
  1600. event from triggering and giving the castle to whoever damaged the most the
  1601. emperium without destroying it. [Skotlex]
  1602. * [Added]:
  1603. - Custom slave mobs to inherit the callback_flag.
  1604. - Added option #25 to buildin_setmobdata to set the callback_flag. [Lance]
  1605. * [Improved]:
  1606. - Cleaned up Custom Mob Script Callback codes. Looks much better now :B. [Lance]
  1607. 2006/06/15
  1608. * [Fixed]:
  1609. - intif_parse_RenamePetOk for not compatible with ANSI-C initialzation specification.
  1610. [Lance]
  1611. * Added indexes for loginlog and ipbanlist as they did not have any.
  1612. (note, someone already put the index on loginlog on trunk.) [Euph]
  1613. * Merged Adam's patch to let the char-server handle validation of
  1614. pet-name-change requests through the allowed char letters config. [Skotlex]
  1615. * Fixed "wedding_ignore_palette: yes" not working when relogging with the
  1616. gear already equipped. [Skotlex]
  1617. * Added blocking of the Kick skills when you are a Soul Linker. [Skotlex]
  1618. * Added enabling to turn off a kick-stance regardless of class. [Skotlex]
  1619. * Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas
  1620. options. [Skotlex]
  1621. * Added back OPTION_XMAS, but the actual value is missing! [Skotlex]
  1622. * Corrected chrif_save so that the player is not set offline on map-change.
  1623. [Skotlex]
  1624. * Added change-look support in pc_setoption when specifying OPTION_XMAS
  1625. [Skotlex]
  1626. * Fixed clif_parse_RemoveOption removing all options instead of just
  1627. Falcon/Cart/Peco [Skotlex]
  1628. * Fixed clif_send not sending packets to SELF when specifying AREA if the
  1629. source is not on the map yet. [Skotlex]
  1630. * Fixed and cleaned up script command 'equip' [Skotlex]
  1631. * Fixed 'autoequip' items. [Skotlex]
  1632. * Fixed Aspd not being updated in your status window after Agi/Dex
  1633. increasing statuses take effect. [Skotlex]
  1634. 2006/06/14
  1635. * Fixed map_nick2sd so that searching for "Adam" will not match a char
  1636. named "Adam Smith". Thanks to Adam for reporting it out. [Skotlex]
  1637. * Modified how luk reduces status changes by reducing the gap. Eg: resist =
  1638. vit; resist += (max - resist)*luk/300; [Skotlex]
  1639. * Added battle settings pc_max_sc_luk/mob_max_sc_luk to handle which is the
  1640. luk threshold at which you gain inmunity (defaults to 300). [Skotlex]
  1641. * Fixed buildin_getmobdata. It was trying to handle the first parameter as the
  1642. array to fill in. [blackhole89]
  1643. * Blocked again skill usage during marionette. [Skotlex]
  1644. * Fixed main.sql adding a key on char_id rather than account_id for the
  1645. char table. [Skotlex]
  1646. * Cleaned up character saving in char-sql, it no longer needs to query the
  1647. database to see if the player exists on each char-save, instead it checks
  1648. the received data against the online-players db. No such fix is required
  1649. for char-txt. [Skotlex]
  1650. * Added an error message on the char-server when the received player data
  1651. size does not matches with the expected size (should avoid the crash that
  1652. happens on such a memcpy). [Skotlex]
  1653. * [Improved]:
  1654. - script_save_mapreg for MapregSQL Saving to display perfomance only in slow
  1655. queries. [Lance]
  1656. 2006/06/13
  1657. * Updated mob_db.sql and item_db.sql to latest. [Skotlex]
  1658. * Added account_id index to char table. Thanks to Buuyo for reporting it.
  1659. Sql users apply upgrade_svn7146.sql NOW. [Skotlex]
  1660. * Marionette and Devotion will now check raw distance and ignore obstacles
  1661. and the like. [Skotlex]
  1662. * Added irc_channel_pass setting and prevent crashing when irc server
  1663. lookup by host fails. Thanks to Trancid for the details. [Skotlex]
  1664. * [Fixed]:
  1665. - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
  1666. [Lance]
  1667. * Added support for reading correctly status change data from Guild and
  1668. Homun skills. [Skotlex]
  1669. * Added support for reading Homun skill data (which means the HM skills are
  1670. now safe to add to skill_db, skill_require_db, etc) [Skotlex]
  1671. * Oppositions can't be made during WoE now. [Skotlex]
  1672. * Fixed a few compiler warnings from VC [Skotlex]
  1673. * Commented out the Homunculus Skills<->Status Change link which was
  1674. causing some memory corruptions. [Skotlex]
  1675. 2006/06/12
  1676. * [Fixed]:
  1677. - buildin_npcshopitem not allocating extra 1 block of terminator.
  1678. [Added]:
  1679. - Modified versions of Dj-Yhn's buildin_npcshopdelitem and buildin_npcshopadditem
  1680. [Lance]
  1681. * Updated clif_disp_onlyself to not use dynamic memory and write directly
  1682. to the player's buffer. [Skotlex]
  1683. * Updated @noask to also tell the user what he has just rejected (added
  1684. msg_athena entries for each of the different requests). Also updated it to
  1685. use clif_disp_onlyself. [Skotlex]
  1686. * Fixed a pair of missing initializers in the clif storage functions.
  1687. [Skotlex]
  1688. * @heal no longer displays a healing animation. Fixes the client believing
  1689. you couldn't be healed more than 32K. [Skotlex]
  1690. * Now you can use any skills (except encore/dancing ones) while under
  1691. Longing for Freeding. [Skotlex]
  1692. * Now you can use any skills while under Marionette Control. [Skotlex]
  1693. * Fixed npc_checknear's distance check returning the opposite of what it
  1694. should (false when the range is correct and viceversa) [Skotlex]
  1695. * Added a warning on item loading when an item is of equippable type but
  1696. has no equippable position. [Skotlex]
  1697. * Turning an alliance to an opposition won't work now during WoE [Skotlex]
  1698. * Slaves can summon other mobs now. The only ones who can't do this are
  1699. player summoned mobs. [Skotlex]
  1700. * Merged the following functions for faster processing of items: [Skotlex]
  1701. clif_storageitemlist + clif_storageequiplist = clif_storagelist
  1702. clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist
  1703. clif_itemlist + clif_equiplist = clif_inventorylist
  1704. Note that the changes are a bit substantial and need proper testing!
  1705. * Increased max knockback value support to 25. [Skotlex]
  1706. * [Optimized]:
  1707. - buildin_npcshopitem memory allocation to calculate before reallocating.
  1708. [Lance]
  1709. * Made guild member exp an unsigned int. [Skotlex]
  1710. * Various cleanups to the npc clicking related functions. Should fix quite
  1711. some possible crashes from crafted packets. [Skotlex]
  1712. * Added overflow checks for bonus settings mdef_rate/def_rate. [Skotlex]
  1713. * Added missing update of INT after a buf. [Skotlex]
  1714. * Small cleanup of how SC_BLEEDING works. [Skotlex]
  1715. * Fixed party_foreach_samemap invoking the function on the CASTER instead
  1716. of on the party members. [Skotlex]
  1717. * Modified clif_parse_NpcClicked to handle the different situations with
  1718. different bl-objects (attack on players/mobs, click on npcs or mobs with
  1719. npc attached) [Skotlex]
  1720. 2006/06/09
  1721. * [Fixed]
  1722. - Compilation warnings on guild.c and int_guild.c [Lance]
  1723. * Added structure party_data and party_member_data to the map server to
  1724. hold party-specific required information about parties including
  1725. Monk/TK/SG/SN states and party member count. Family information is still
  1726. missing, and handling of the state should probably be done by the
  1727. char-server, too... [Skotlex]
  1728. * party Hp updates are no longer done each time the Hp is modified, but
  1729. together with the party xy timer. It means HP-bars will be a bit delayed
  1730. before being updated, but packet consumption should be much less during
  1731. heated battles. [Skotlex]
  1732. * Fixed MoM's typo [Vicious]
  1733. * Fixed map_readafm missing strcpy(afm_name, m->name). [Skotlex]
  1734. * [Improved]:
  1735. - npc_click interception on BL_MOB and BL_PC to let sd act accordingly.
  1736. [Lance]
  1737. * [Fixed]:
  1738. - Execution of sleep/sleep2 more than once will hang the script_state.
  1739. [Lance]
  1740. * Fixed @mapinfo displaying incorrectly maps with nosave which send you
  1741. back to your last savepoint. [Skotlex]
  1742. * Moved guild_exp_rate from a mapserver battle config setting to a char
  1743. server config. It no longer modifies the total taxed exp as seen on the
  1744. guild information window, but directly modifies the exp that the guild
  1745. earns. [Skotlex]
  1746. * Added an error report and correction when the map server receives a guild
  1747. from the char-server with more guild members than MAX_GUILD. [Skotlex]
  1748. * Changed the interval between waterballs back to 125 [MasterOfMuppets]
  1749. * Fixed a typo in char_sql/char.c, thanks to Euph [MasterOfMuppets]
  1750. 2006/06/08
  1751. * Modified guild exp to be an unsigned int rather than a signed one.
  1752. [Skotlex]
  1753. * Fixed @skilltree printing out Unknown job for most targets used.
  1754. [Skotlex]
  1755. * Cleaned clif_pvpset to not send the packet to nearby characters when the
  1756. source is GM-hidden. May help fix the crash on PvP with gm-hidden
  1757. characters. [Skotlex]
  1758. * Modified map_freeblock_unlock so that aFree errors will report the
  1759. file/line that INVOKED the function rather than the function itself.
  1760. [Skotlex]
  1761. NOTE: Do NOT disable the memory manager as that will break this change.
  1762. This change is to be temporarily set until the afree'd error can be
  1763. resolved.
  1764. * Updated mob_npc_warp to a three-state config switch. 0 disables. 1 enable
  1765. only on warps that don't lead to nobranch maps. 2 - enable on all warps.
  1766. [Skotlex]
  1767. * Adjusted Don't Forget Me, Defender, Longing to use all val entries, and
  1768. to hold the speed adjustment value rather than speed penalty (eg: 125
  1769. instead of 25). [Skotlex]
  1770. * Cleaned up status_calc_speed so that speed penalties are correctly
  1771. handled (eg: 25% penalty is speed*100/75, not +speed*25/100). Thanks to
  1772. Euph for pointing it out and Belle for the speed mechanics. [Skotlex]
  1773. 2006/06/07
  1774. * Fixed Sense using mdef instead of mdef2 [Skotlex]
  1775. * Fixed item-skills not showing up on login. [Skotlex]
  1776. * Cleaned up clif_parseLoadEndAck, by testing which packets are required
  1777. only on first-login and which ones are required on all map-changes.
  1778. Skill-tree, Exp, Skill Points and most of the basic status are no longer
  1779. sent on map-change (items, cart data and zeny still need to be sent one
  1780. very map-change). [Skotlex]
  1781. * Fixed the mob state not being set to Berserk/Angry correctly after the
  1782. mob reaches the target's location. [Skotlex]
  1783. * Added config setting mob_npc_warp, when set to yes, enables mobs to be
  1784. warped between maps when stepping on a npc-warp. [Skotlex]
  1785. * Added monster_ai setting &64, when enabled makes a mob run to any nearby
  1786. npc-warp when their current target has switched maps. [Skotlex]
  1787. * Added pc_calcexp to calculate individual exp bonuses acquired from exp's
  1788. source (race bonus cards, SG Exp skills, pk-mode higher level exp) [Skotlex]
  1789. * pc_gain_exp now also receives the source of the exp, when said source
  1790. exists, bonuses are applicated as needed. [Skotlex]
  1791. * Added status_kill when capturing a mob, should take care of the mob not
  1792. respawning after caputed. [Skotlex]
  1793. * Fixed item info not displaying the found item id [Skotlex]
  1794. * Fixed item info not displaying the weight value properly. [Skotlex]
  1795. * Adjusted status resistances and durations taking as base Viccious's info
  1796. from the kro guidebook. [Skotlex]
  1797. * Moved souldrain code from skill_counter_additional_effect to mob_dead. It
  1798. should display the skill animation correctly now. [Skotlex]
  1799. * Adjusted several sc rate/time reductions as pointed out by Playtester.
  1800. [Skotlex]
  1801. - Luk now plays a luk/10 reduction role rather than a luk/3 one.
  1802. * Removed char_nick2id from char-sql server as it's no longer needed.
  1803. [Skotlex]
  1804. * Fixed quitting the map server not properly saving the storage before
  1805. deleting it. Thanks to Adam for pointing it out. [Skotlex]
  1806. * Cleaned status_get_sc_tick/status_get_sc_def to use the status_data
  1807. function. [Skotlex]
  1808. * SC_STOP's chance and duration can't be reduced anymore. [Skotlex]
  1809. * Storm Gust no longer has a 100% chance to freeze by passing mdef, now it
  1810. has a 300% base chance reduced by mdef and the like as explained out by
  1811. Tharis. [Skotlex]
  1812. * Frost Diver/Frost Nova's base freezing chance is no longer affected by
  1813. target's int. [Skotlex]
  1814. * [Improved]:
  1815. - mob_dead not to remove script controlled monsters with player sprites.
  1816. [Added]:
  1817. - buildin_mobdeadsit :D [Lance]
  1818. * [Fixed]:
  1819. - temp++ gets issued before if(mvp_damage<(unsigned int)md->dmglog[i].dmg) in
  1820. mob_damage. Thanks to seahorsix. [Lance]
  1821. * [Fixed]:
  1822. - Corrected login-server SQL to use *((ulong *)p) instead of (ulong)p [Lance]
  1823. * [Optimized]:
  1824. - list and size not being initialized (size get intialized in default: switch case)
  1825. Eliminated default case and initialized list and size at the beginning. [Lance]
  1826. 2006/06/06
  1827. * Hopefully fixed for sure mobs getting extra stats when changing-class due
  1828. to the mobs level up setting. [Skotlex]
  1829. * Removed a piece of code that should no longer be needed due to the
  1830. combo-skill setting (inf = self, inf2 = no-target-self) which is blocking
  1831. self-skills from being used on others (pets/mobs should be allowed to do
  1832. that) [Skotlex]
  1833. * Added a status_check_skilluse call in Sightblaster to prevent it from
  1834. hitting hidden/cloaked/act-dead/etc players. [Skotlex]
  1835. * Fixed firewall counter going down by 2 each hit rather than 1. [Skotlex]
  1836. * Fixed Soul Burn not zapping away all SP. [Skotlex]
  1837. * The monsters can level up setting will not take effect when the mob's
  1838. level is LESS than their db counter-part (should prevent under-leveling
  1839. causing underflows and semi-immortal mobs) [Skotlex]
  1840. * Fixed mvp-exp calculations being messed up with more than one attacker.
  1841. [Skotlex]
  1842. * Changed the mob exp race bonus so that each player gets their own bonus,
  1843. rather than the killer's bonus applying to everyone. Still not the
  1844. "correct" way, but one step closer to it. [Skotlex]
  1845. * [Fixed]:
  1846. - Allocation of event_list in guild_npc_request_info to aCalloc so
  1847. memcpy(ev->name,event,strlen(event)) will have a null terminator. [Lance]
  1848. 2006/06/05
  1849. * Fixed a crash when using SL_SMA and the "combo" ain't ready. [Skotlex]
  1850. * Hopefully fixed changing a mob's class causing them to get all sort of
  1851. stat bonuses due to the mobs-level-up setting. [Skotlex]
  1852. * Changed hit, flee, cri, flee2, def2 and mdef2 to signed short, def, mdef
  1853. to signed char to correctly account for cards with penalties in said stats.
  1854. [Skotlex]
  1855. * Fog of Wall won't affect the caster now in any way. [Skotlex]
  1856. * Added clif_fixpos packets before attacking for the first time to clear
  1857. any position sync issues with the client. [Skotlex]
  1858. * Fixed skill_unitsetting using layout->count for the for instead of
  1859. group->count [Skotlex]
  1860. * Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly
  1861. increase dex/agi by 40% per level. [Skotlex]
  1862. * Fixed char-sql server not deleting character variables when deleting a
  1863. char. [Skotlex]
  1864. * Corrected cloaking not ending on attack if you are near a wall. [Skotlex]
  1865. * Updated pc_bonus to use cap_value on all status_data modifiers to prevent
  1866. overflows/underflows. [Skotlex]
  1867. 2006/06/03
  1868. * Fixed @mi/@mobinfo not showing the name collumns correcly [shadow]
  1869. * Solved the bug that made firewalls only castable a few times until [MasterOfMuppets]
  1870. you relogged. Thanks to Euph for the fix.
  1871. * Added variable other_mapserver_count to chrif.c which holds total count
  1872. of connected map-servers. By using this we prevent sending unnecessary
  1873. packets to the char-server when there's no more map-servers connected.
  1874. [Skotlex]
  1875. - Affected packets are whispers, announces, party messages, guild messages.
  1876. 2006/06/02
  1877. * Fixed Visual Studio 7.1 Solution File (Login TXT and Map TXT were removed)
  1878. * Fixed a bug in unit_can_reach_bl which breaks path seeking when the
  1879. target is near obstacles. [Skotlex]
  1880. * Updated offensive use of Sanctuary to function like on the official servers [MasterOfMuppets]
  1881. * Changed the interval between waterballs from 150 to 250 milliseconds [MasterOfMuppets]
  1882. * Corrected clif_parse_takeitem to ALWAYS return a NAK packet when it
  1883. fails. Fixes cases where the client gets "stuck" and refuses to let you
  1884. pick any items. [Skotlex]
  1885. * Removed the walk delay from firewall and changed its knockback [MasterOfMuppets]
  1886. to 1 tile to make it act more like in the official servers.
  1887. * Some cleaning of the mob slave ai. [Skotlex]
  1888. * Corrected Brandish Spear to work on levels above 10. [Skotlex]
  1889. * Updated Two-HandQuicken, One-HandQuicken to give 30 +2*lv% aspd-rate for
  1890. skill levels above 10 (meant for boss casted skills) [Skotlex]
  1891. * Fixed Spear-Quicken messing with the calc_flag [Skotlex]
  1892. * Fixed Freeze/Stone/Benedictio not changing your elemental LEVEL to 1.
  1893. [Skotlex]
  1894. * [Fixed]
  1895. - Yet another compilation warning. [Lance]
  1896. 2006/06/01
  1897. * Altered status_calc_pc so that equipment scripts are ran before
  1898. card-scripts. [Skotlex]
  1899. * Fixed pc_bonus to not underflow/overflow when adjusting def/mdef.
  1900. [Skotlex]
  1901. - These two together, should fix Tao Gunka Card.
  1902. * npc_debug_warps() will now be invoked if warp_point_debug is set.
  1903. [Skotlex]
  1904. * Updated item_db.sql/mob_db.sql to current. [Skotlex]
  1905. * Fixed NPC_SELFDESTRUCTION not showing nor dealing damage. [Skotlex]
  1906. * NPC_TRANSFORMATION/NPC_METAMORPHOSIS will now preserve the original mob
  1907. without removing it when the skill level is greater than one. [Skotlex]
  1908. * Added SC_DANCING declaration in the Status Change tables to signal it
  1909. modifies Walk speed. [Skotlex]
  1910. * Fixed pc_damage setting your canlog_tick even if the damage has no source
  1911. (eg: poison, berserk) [Skotlex]
  1912. * Berserk's aspd bonus now stacks with other aspd bonuses, but is still
  1913. affected by Quagmire/Forget-me-not. [Skotlex]
  1914. * Corrected setting slaves_inherit_mode to not apply to morphosis skills.
  1915. [Skotlex]
  1916. * Corrected pc_setoption to invoke status_calc_pc when getting/removing the
  1917. cart. [Skotlex]
  1918. * Fixed @mobinfo displaying the wrong element. [Skotlex]
  1919. * Fixed Autoblitz taking into account target's luck rather than attacker's
  1920. [Skotlex]
  1921. * Fixed slaves warping endlessly to their master when the master-slave
  1922. distance exceeds 30. [Skotlex]
  1923. * SC_ORCISH will now be dispelled on logout (if debufF_on_logout is set)
  1924. [Skotlex]
  1925. * Removed attackrange/attackrange_ from TBL_PC, corrected clif.c using the
  1926. incorrect range variable. [Skotlex]
  1927. * You can now equip/unequip stuff while the storage is open. [Skotlex]
  1928. 2006/05/31
  1929. * Fixed Soul Drain not really giving you SP [Skotlex]
  1930. * [Fixed]:
  1931. - Suppressed compilation warning in chrif.c [Lance]
  1932. * [Fixed]:
  1933. - Guys can't go across map-servers :( [Lance]
  1934. * [Fixed]:
  1935. - Restoration and saving of sd->npc_id must be done every time. [Lance]
  1936. * Added back the Freeze/Petrify adjustments of -50%def and +25%mdef (when
  1937. where these lost?). Thanks to Buuyo for pointing it out. [Skotlex]
  1938. * Corrected the mob_ai&2 setting triggering rude-attacked due to can't walk
  1939. delay. [Skotlex]
  1940. * Made the char_name_option char_athena.conf setting apply to parties and
  1941. guilds as well. It cannot be applied to pets yet without adding a
  1942. change-name-request interserver packet. [Skotlex]
  1943. * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them.
  1944. [Skotlex]
  1945. * Added function char_read_fame_list for famelist reading. Invoked it on
  1946. init, and made it be sent automatically to connecting map servers.
  1947. [Skotlex]
  1948. * Some cleaning of the fame-list reading code. [Skotlex]
  1949. * Some cleaning of the fame-update code, fixed a logic bug which made the
  1950. ranking list fail to display the correct ranker names. [Skotlex]
  1951. * Removed typedef bool from socket.h and included cbasetypes.c instead.
  1952. [Skotlex]
  1953. * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in
  1954. status_calc_bl. [Skotlex]
  1955. * [Fixed]:
  1956. - Incorrect SQL syntax in login.c (missing collumn) [Lance]
  1957. * [Improved]:
  1958. - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance]
  1959. * [Fixed]:
  1960. - nullpo in pet.c caused by equipping without checking if the pet is available.
  1961. [Lance]
  1962. * [Fixed]:
  1963. - Latest client support completed! [Lance]
  1964. * [Fixed]:
  1965. - Missing #include for cbasetypes.h in login server SQL.
  1966. - Logic errors in run_script [Lance]
  1967. * [Added]:
  1968. - Partial support for latest login packet. But it seems to have a new security
  1969. module. [Lance]
  1970. 2006/05/30
  1971. * [Improved]:
  1972. - Fake NPC interface to use real NPCs.
  1973. - Scripting interface to restore and save sd->npc_id. [Lance]
  1974. * Added function pc_check_skilltree for checking if you unlocked new
  1975. tree-skills when raising non-passive skills. [Skotlex]
  1976. * Fixed flee/hit calculation in status_calc_bl to account for bonuses from
  1977. the base status. [Skotlex]
  1978. * [Fixed]:
  1979. - Compatibility problems in login.c [Lance]
  1980. * Fixed pets ignoring can-act delays for skill usage. [Skotlex]
  1981. * [Added]:
  1982. - Mercenary.c in VS.NET 2005 project files
  1983. [Improved]:
  1984. - loginlog using unsigned long `ip` field.
  1985. (Please check for compatibility problems). [Lance]
  1986. * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain
  1987. bonuses (like effect-on-hit) to stack. [Skotlex]
  1988. * slaves inherit speed setting will now work regardless of whether the
  1989. slave or master has the MD_CANMOVE mode bit. [Skotlex]
  1990. * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex]
  1991. * AL_TELEPORT will fail when used by slave mobs. [Skotlex]
  1992. * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable
  1993. attacks. [Skotlex]
  1994. * Fixed status_damage not setting your HP to 0 when you died [Skotlex]
  1995. * Fixed the pcbonus2 warnings using the wrong value before printing the
  1996. invalid Element error. [Skotlex]
  1997. * Fixed underflow issues when calculating dmotion. [Skotlex]
  1998. * Fixed Absorb Spirit Spheres [Skotlex]
  1999. * Added battle_config min_chat_delay (default 0, battle/client.conf)
  2000. specifies in ms what is the min delay between player sent chats
  2001. (whisper/global/party/guild). Messages that exceed this threshold are
  2002. silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the
  2003. player?) [Skotlex]
  2004. * [Fixed]:
  2005. - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance]
  2006. * Rewrote/cleaned up @petfriendly. [Skotlex]
  2007. * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex]
  2008. * Updated attr_fix_table reading code to account for ELE_MAX (will
  2009. correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex]
  2010. * Aggressive mobs will now use battle_check_range rather than mob_can_reach
  2011. to decide whether to lock-on or not to a target within sight-range. [Skotlex]
  2012. * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex]
  2013. * Added error messages in pc_bonus* functions when an invalid element is
  2014. passed to the relevant bonuses. [Skotlex]
  2015. * [Optimized]:
  2016. - clif_specialeffect to use the enums.
  2017. [Improved]:
  2018. - buildin_specialeffect and buildin_specialeffect2 to accept effect area
  2019. definition. [Lance]
  2020. * [Added]:
  2021. - Visual Studio .NET 2003 includes for mercenary.c [Lance]
  2022. * Removed the on-die specific code from unit_remove_map and placed it on
  2023. the corresponding *_dead functions. unit_remove_map should never assume the
  2024. char died, it is just a "remove from map" function. [Skotlex]
  2025. * Updated status_damage to handle the general death code (clearing status
  2026. changes, clearing skill related data, sending death packet, etc). The
  2027. return value from the *_dead functions will tell it what to do or not with
  2028. the object (death aborted, clear it from map/memory, etc) [Skotlex]
  2029. * Cleaned up pc_dead to take advantage of the fact that status changes are
  2030. not ended until after the function. [Skotlex]
  2031. * Disabled ontouch npcs triggering on hidden/chase-walk characters.
  2032. [Skotlex]
  2033. * Updated/adapted current Homun code to use the status_data update.
  2034. [Skotlex]
  2035. * Updated map-server Makefile to compile mercenary.* files. [Skotlex]
  2036. * [Fixed]:
  2037. - Pets attacking even master is dead. [Lance]
  2038. * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0
  2039. (negative values should be allowed when attack is absorbed by target's
  2040. element) [Skotlex]
  2041. 2006/05/29
  2042. * [Fixed]:
  2043. - Missing ';' in item #4358 [Lance]
  2044. * [Fixed]:
  2045. - Missing maps in map index database. [Lance]
  2046. * [Fixed]:
  2047. - Battle mechanics in battle_check_target [Lance]
  2048. * [Fixed]:
  2049. - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing.
  2050. [Lance]
  2051. * Cleaned up friend list saving and fixed loading of friends.txt file
  2052. (char-txt) [Skotlex]
  2053. * Added the Arunafeltz maps, not tested yet [Playtester]
  2054. - someone with an up-to-date client should test them
  2055. * Fixed pc_gainexp resetting your exp to 0 rather than adding it in...
  2056. [Skotlex]
  2057. * Corrected aspd calculation code to avoid negative overflows. [Skotlex]
  2058. * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR
  2059. instead of BL_PC and BL_MOB [Skotlex]
  2060. * [Fixed]:
  2061. - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance]
  2062. * Removed Undead being inmune to poison status. [Skotlex]
  2063. * Removed speed penalty from SC_SKA [Skotlex]
  2064. * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex]
  2065. * SC_DODGE won't be dispelled on death now. [Skotlex]
  2066. * [Fixed]:
  2067. - pc_follow_timer possible triggering crash.
  2068. - pc_reg_received to use battle_status.hp instead of status.hp
  2069. [Added]:
  2070. - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance]
  2071. * Added a division by zero check in mob_dead to prevent the (impossible)
  2072. case where a mob dies with received damage of zero. [Skotlex]
  2073. * Modified skill_get_range2 to return range 9 for skills with range 0 for
  2074. Non-Players. This usually signals Self skills, and mobs/pets should be able
  2075. to use them in other characters. [Skotlex]
  2076. * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex]
  2077. * Fixed draining when the amount drained is negative (invoke zap rather
  2078. than heal) [Skotlex]
  2079. * Implemented GS_FLING as per the current skill description. [Skotlex]
  2080. * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than
  2081. status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex]
  2082. * Added some missing SC_* entries on the initial listing (potion related
  2083. and speed up ones) [Skotlex]
  2084. * Fixed function declaration of map_getcellp() [Skotlex]
  2085. * [Fixed]:
  2086. - status.c:920: warning: 'mbl' might be used uninitialized in this function
  2087. - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function
  2088. - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function
  2089. - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance]
  2090. * [Optimized]:
  2091. - Removed unused variable (account_id) in storage_guild_storagesaved.
  2092. * [Optimized]:
  2093. - Removed unused checks for unsigned data type and possible logic error for
  2094. char type (gcc treats char as unsigned). [Lance]
  2095. * [Fixed]:
  2096. - Relogging in with 0 HP didn't trigger dead event. [Lance]
  2097. 2006/05/28
  2098. * Added functions status_revive, pc_revive and mob_revive to handle revival
  2099. (it doesn't handles player respawning, though). Fixed reviving @ commands.
  2100. [Skotlex]
  2101. * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes
  2102. Bladestop causing an unknown status change message). [Skotlex]
  2103. * Fixed MSS_DEAD state skills not triggering. [Skotlex]
  2104. * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets]
  2105. * [Fixed]:
  2106. - script functions that doesn't pass references, thanks to End_of_exam. [Lance]
  2107. * [Protected]:
  2108. - clif_parse_LGMmessage from possible hacks [Lance]
  2109. * Fixed unable to store n items into storage unless n was the total amount
  2110. of items you had. [Skotlex]
  2111. * Suppressed compilation warnings (unsigned and signed mismatches) [Lance]
  2112. 2006/05/27
  2113. * Added structure status_data which holds status-related information (str,
  2114. agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc)
  2115. and weapon_atk structure with the weapon specific info (atk, atk2, element)
  2116. to be used by all combat structures (TODO: Homun needs to be updated to use
  2117. it). This in change involves a LOT of changes throughout the code and many
  2118. optimizations were done as well. Partial list (see svn changelog for complete
  2119. changes): [Skotlex]
  2120. - NOTE: Changes are substantial! I tested a bunch of stuff and all the
  2121. skills I changed the most, but it is possible there are unnoticed bugs
  2122. remaining to fix!
  2123. - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data.
  2124. - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead
  2125. - Added status functions to deal with damage and healing (status_damage,
  2126. status_heal, status_percent_change) and a bunch of defines for easier
  2127. handling of them (status_percent_heal, status_percent_damage,
  2128. status_fix_damage, status_kill, etc). Objects must be hurt/healed through
  2129. THIS, pc_damage/mob_damage most no longer be directly invoked!
  2130. - Rewrote and cleaned up battle_calc_misc_attack
  2131. - Merged config options pc_attack_attr_none, mob_attack_attr_none,
  2132. pet_attack_attr_none into attack_attr_none (type 4)
  2133. - Removed config options player_defense_type, monster_defense_type,
  2134. pet_defense_type in favor of weapon_defense_type
  2135. - Modified skill_calc_heal to take into account the MEDITATION bonus.
  2136. - Modified Slim Pitcher so it will work when casted by non-players. Will
  2137. now also work with SP-healing items.
  2138. - Rewrote Freedom of Cast code to use function status_freecast_switch to
  2139. switch adelay/speed when cast begins/ends.
  2140. - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for
  2141. easier updating when used in conjunction with ground skills.
  2142. - Fixed Asura Strike being usable from within a combo regardless of combo skill.
  2143. - Added status_calc_bl which does status-change related calculations using
  2144. as base the base_status of the bl object and the SCB_* flag passed. This is
  2145. invoked on status changes, and status_calc_pc will no longer be invoked
  2146. (which results on much faster status-change calculations).
  2147. - pc_clean_skilltree will now also remove item-granted skills.
  2148. - Learning skills will now only invoke status_calc_pc when the skill is passive.
  2149. - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related
  2150. packets and functions ONCE regardless of skill-levls earned.
  2151. - Cleaned up pc_ regen related functions.
  2152. - Made player-sprite mobs have item pickup animation and walkdelay when taking items.
  2153. - Clones will copy a player's base status rather than battle status (so
  2154. status-change alterations are not cloned)
  2155. 2006/05/26
  2156. * Part B of the homunculus code. [blackhole89]
  2157. While most of the homunculus handling functions are in now, it still lacks
  2158. code required for players to create it.
  2159. Given I haven't screwed up, you could master yourself one through the DB though.
  2160. * Fixed crashing in mob.c [Lance]
  2161. * Patches to allow everything to work right. + 1 more sample script. [Lance]
  2162. * Mob control engine tested 99% working so far. [Lance]
  2163. * Change scripting engine's NPC scope vars to dot (.) style.
  2164. * Improved and (should be fully) fixed the mob control engine. [Lance]
  2165. * Fixed typos in char.c [Lance]
  2166. * Rewrote fame rank lists system to reduce char-server load, as requested by
  2167. Skotlex: now it has a copy of those lists, and updates only the proper one
  2168. when needed instead of rebuilding all from saves everytime (which required
  2169. to always save the character before rebuilding the lists) [DracoRPG]
  2170. - Note it hasn't been compiled nor tested with SQL, please do it for me
  2171. 2006/05/25
  2172. * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional
  2173. int-based damage component (which is added right before elemental
  2174. modifiers) as described by AuronX. Pending further refining. [Skotlex]
  2175. * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus]
  2176. Fixed atcommand @request MSG numbers accordinly.
  2177. On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too
  2178. * Added NoVending mapflag. You may disable vending in the streets [Lupus]
  2179. * Increased capacity for Account Variables to 64 [Skotlex]
  2180. * Reverted Intravision implementation to that of stable's. [Skotlex]
  2181. * Corrected Login Server taking it's first argument as both login config
  2182. and lan config. [Skotlex]
  2183. * Fixed mob control commands.
  2184. * Fixed memory leak in scripts (again). Still have a few lying. [Lance]
  2185. 2006/05/24
  2186. * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout.
  2187. * Item sharing now shares the same rules as exp sharing (no sharing when
  2188. dead, or idle, etc) [Skotlex]
  2189. * Fixed summoned slaves being able to cast onspawn summon-skills (slaves
  2190. aren't supposed to be able to call minions) [Skotlex]
  2191. * The clif_skill_poseffect packet will not be invoked in Snap unless the
  2192. skill was successful. May fix the client-position lag. [Skotlex]
  2193. * Merged item_db.sql from stable (the one from stable was more recent than
  2194. the one of trunk...) [Skotlex]
  2195. * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex]
  2196. * Corrected a pair of incorrect sql query parsing logic in the login-sql
  2197. ban request packet. [Skotlex]
  2198. 2006/05/23
  2199. * Corrected mob angry mode, now it only "restores" itself after being hit
  2200. when the mob has no target within their range of sight rather than on
  2201. picking a new target. [Skotlex]
  2202. * Fixed wedding sprite where it would stay active after unequipping. [Zido]
  2203. * Some cleanup of run_script, should fix the memory leak there. [Skotlex]
  2204. * the charname request hack message has been downgraded to only include
  2205. GM-invisible characters. [Skotlex]
  2206. * corrected clif_charnameack to send negative ID when a disguised player
  2207. asks for it's own disguised name. [Skotlex]
  2208. * Cleaned up the disguised target-id checks taking into considering that
  2209. the only character that sees a negative ID is the same disguised character.
  2210. [Skotlex]
  2211. * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce
  2212. defense), Investigate and Icepick will now use the final def/vit-def values
  2213. rather than the base ones. [Skotlex]
  2214. * The move-enable condition checks for skills are now checked for only when
  2215. on skill use, not at cast-end time. [Skotlex]
  2216. * Corrected clif parse name request failing on disguised characters [Skotlex]
  2217. * Corrected Soul Drain draining from all non-ground-based skills including
  2218. non-magic attacks. [Skotlex]
  2219. * Corrected pc_setoption to change the option and then change class.
  2220. changing option-wedding will automatically convert the view-class as well.
  2221. [Skotlex]
  2222. * Corrected the 15% drop rate increase when killing higher level mobs in
  2223. pk-mode triggering for all mobs with lower level than yourself. Thanks to
  2224. Vayu. [Skotlex]
  2225. * Fixed typo (this time it's not my fault) in script_reload() clearing the same
  2226. db each time o_o [Lance]
  2227. * Fixed sleep command. [Lance]
  2228. * Added 'setd' support for local NPC scope (') variables. [Lance]
  2229. * [Scripting Engine Update] New variables are ready to be used. [Lance]
  2230. 2006/05/22
  2231. * Updated skill_delayfix to return 0 for mobs since they have no skill
  2232. delay other than the one specified in mob_skill_db [Skotlex]
  2233. * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to
  2234. Vayu for pointing it out. [Skotlex]
  2235. * status_get_sc_tick will now use directly Stun's formula rather than
  2236. invoking the status sc chance once. [Skotlex]
  2237. * Fixed a possible null pointer in script command misc_effect [Skotlex]
  2238. * Modified Investigate to take into consideration final def/vit-def rather
  2239. than base values for damage adjustment. [Skotlex]
  2240. * WARNING: New scripting system contains memory leak
  2241. TODO: Free all scripts using script_free_code() instead of old methods. [Lance]
  2242. * Excluded idle and auto-trade party members from TK_POWER list. [Lance]
  2243. * Fixed compilation errors.
  2244. Tidy up jobmaster for easy debugging. [Lance]
  2245. 2006/05/21
  2246. * Part A of the Homunculus code.
  2247. This only features the structures, status_* and clif_* (packets) and is
  2248. not functional yet in any conventional way, but doesn't interfere
  2249. with present functionality either.
  2250. Main purpose is helping me to keep my work organized. [blackhole89]
  2251. * Fixed the "fake" mute status bug. [Zido]
  2252. * Speed up array size calculation and deletion. [Lance]
  2253. * Player must learn the skill before doing auto-spell [Lance]
  2254. * Exploit prevention in clif_parse_NpcStringInput [Lance]
  2255. * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus]
  2256. * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus]
  2257. 2006/05/20
  2258. * grfio_final moved back if any of GRF overriding is enabled so servers
  2259. with such configuration will not have different values after reloading. [Lance]
  2260. * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance]
  2261. * Abit of alterations to login-server. [Lance]
  2262. 2006/05/19
  2263. * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance]
  2264. * Small change in pc_additem that could be fixing the current bug with new
  2265. items not getting added. [Skotlex]
  2266. * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex]
  2267. * Likely fixed the mob-skill random picking behaviour causing infinite
  2268. loops sometimes. [Skotlex]
  2269. * Modified mobskill_use behaviour to pick a random starting point and check
  2270. skills from that, rather than always checking from first to last. Fixes
  2271. skills with high priority blocking skills lower down in the list from
  2272. triggering. [Skotlex]
  2273. * Updated mob ai behaviour so that mobs use IDLE state skills when their
  2274. current target cannot be reached for melee fighting. [Skotlex]
  2275. 2006/05/18
  2276. * Added 5 config settings to adjust damage in pk-mode servers (misc.conf)
  2277. [Skotlex]
  2278. * Fixed mob_max_skilllvl being capped to 11! [Skotlex]
  2279. * Rewrote/cleaned up several functions in storage.c [Skotlex]
  2280. * Optimized pc_additem comparisons to account for items with more than four
  2281. slots. [Skotlex]
  2282. * Updated clif.c to enable retrieval of items from cart/storage while
  2283. trading. Exception is retrieving items from the cart while vending.
  2284. [Skotlex]
  2285. - The reasoning is that an ongoing trade will not get "corrupted" if you
  2286. earn items before it is commited (only if you lose items from your
  2287. inventory), and it is an annoyance when you realize the stuff you want to
  2288. trade is on the cart/storage.
  2289. * skill reiteration code now does not checks for the trigger-area of the
  2290. skill in the case of non-players, which means mobs can now place traps in
  2291. cells adjacent to each other. [Skotlex]
  2292. * Applied an experimental weather code that should lower bandwidth usage to
  2293. near-none, which's only disadvantage should be the weather not clearing out
  2294. until moving to another map (even when the mapflag is removed from the
  2295. current map). Please test and report if there's any anomalies with it.
  2296. [Skotlex]
  2297. * NPC_AGIUP will now give movement boost of 50% [Skotlex]
  2298. * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex]
  2299. * MO_BODYRELOCATION will send the slide packet with the actual src's
  2300. coordinates rather than selected tile. [Skotlex]
  2301. 2006/05/17
  2302. * Modified mob_can_changetarget to return true always when the new target
  2303. is the provoked-by character. Fixes provoke not making the mob change
  2304. target when it already is locked on another player. [Skotlex]
  2305. * Added check to clear previous skill when combo time ends. Should fix TK
  2306. Rankers being unable to initiate a combo with the same kick their previous
  2307. combo was finished with. [Skotlex]
  2308. * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex]
  2309. 2006/05/16
  2310. * Modified "hide woe damage" to send the number of hits rather than 1 as
  2311. damage Because when the damage is less than the number of hits, the client
  2312. will display MISS. [Skotlex]
  2313. * Fire Pillar will now do 200%MATK damage per hit when level is >10.
  2314. [Skotlex]
  2315. * Blood Drain always hits now. [Skotlex]
  2316. * Fixed Mob Area Skills not updating their use-time (rendering their skill
  2317. delay useless) [Skotlex]
  2318. * Search free cell will now skip picking the center-tile as target
  2319. location. Will prevent slaves from walking on top of their master, or mobs
  2320. placing stuff right under themselves with the "around" target conditions
  2321. among other things. [Skotlex]
  2322. 2006/05/15
  2323. * Small changes to the skill.conf
  2324. - Monsters now can place ground skills on top of each other by default
  2325. - Land_Skill_Limit format changed and set to "Only Players" by default
  2326. * When reading mapflags, when a map is set to be pvp or gvg, the other will
  2327. be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex]
  2328. * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the
  2329. skill level is above 10. [Skotlex]
  2330. * Sorted out the item_data structure, getiteminfo should work correctly
  2331. now. [Skotlex]
  2332. * KA* skills can now be casted on other Soul Linkers as well without the
  2333. Spirit requirement. [Skotlex]
  2334. * Soul Drain will now show the SP drained regardless of drain display
  2335. settings. [Skotlex]
  2336. * SC_COMBO state will now end in skill_attack rather than
  2337. skill_check_condition (as it is required there to apply damage bonuses
  2338. based on combo-casted skills) [Skotlex]
  2339. * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096)
  2340. [Skotlex]
  2341. * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode
  2342. servers. [Skotlex]
  2343. * When removing a castle's owning guild, the char servers will erase the
  2344. guardian data now. [Skotlex]
  2345. * Changed the behaviour of immobile mobs when they can't chase their
  2346. target. Rather than using a longrange skill and then unlocking, they will
  2347. use an attack/angry state skill and then unlock. [Skotlex]
  2348. * Some adjustments of how disguising + gm-hiding work together. [Skotlex]
  2349. * Fixed clif_GlobalMessage being the exact same function as clif_message
  2350. (the first should send to ALL_CLIENT and the later should send to
  2351. AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex]
  2352. * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex]
  2353. * Characters in vending are now always considered "idle" if the
  2354. idle_no_share setting is active. [Skotlex]
  2355. * Players with OPTION_INVISIBLE should not be sent to clients. [Lance]
  2356. * Remaining fixes for item scripts. [Lance]
  2357. * Added NPC event deprecated warnings to ease debugging old scripts. [Lance]
  2358. 2006/05/12
  2359. * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance]
  2360. * Bugfix on fake npc [Lance]
  2361. * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89]
  2362. * Reverted again the change that stuns the caster on Ske, Ska, Swoo when
  2363. the target is a nonplayer (rather than always) [Skotlex]
  2364. * Modified mob_spawn_once so that coordinates -1,-1 are "random around the
  2365. player" while 0,0 are random around the whole map (regardless of whether
  2366. there's a player attached or not) [Skotlex]
  2367. * Knockback will no longer work on traps during woe. [Skotlex]
  2368. 2006/05/11
  2369. * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage
  2370. [Skotlex]
  2371. * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively)
  2372. of 40% per level. [Skotlex]
  2373. * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows.
  2374. [Skotlex]
  2375. * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex]
  2376. * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex]
  2377. * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex]
  2378. * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2)
  2379. [Skotlex]
  2380. * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10
  2381. secs (reducable) if you target a mob that already has Swoo active. [Skotlex]
  2382. * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to
  2383. Tanaous [Skotlex]
  2384. * Added back the missing code that substracts arrows when normal-attacking.
  2385. [Skotlex]
  2386. 2006/05/10
  2387. * Changed the state of Asura back to explosionspirits, added a hardcoded
  2388. move_enable check when invoking Asura and NOT while in BladeStop or a
  2389. Combo. [Skotlex]
  2390. * Added back SC_XMAS to status.c, it got lost sometime during all the
  2391. previous reworkings. [Skotlex]
  2392. * Changed wedding costumes to use setoption rather than changebase.
  2393. [Skotlex]
  2394. * Modified setoption so that flag 1 or no flag adds an option, and flag 0
  2395. removes it. [Skotlex]
  2396. * Updated script_commands with the new behaviour. [Skotlex]
  2397. * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather
  2398. than 15. [Skotlex]
  2399. * Users are now able to use their own dnsbl servers (login_athena) [Zido]
  2400. 2006/05/09
  2401. * Rewrote/cleaned up trade.c for a more clean trading implementation.
  2402. [Skotlex]
  2403. * Added @request commands, sends a request to all connected GMs of
  2404. lowest_gm_level or above as a whisper message. Defaults to gm level 20
  2405. users (UNTESTED). [Skotlex]
  2406. * Modified @commands to use Meruru's code which is faster and does a fair
  2407. attempt at tabulating the commands presented. [Skotlex]
  2408. * Updated SKA to return a random value between 0 and 99 each time
  2409. status_get_def is invoked. [Skotlex]
  2410. * Updated Making Arrow to not include unidentified items in the list.
  2411. [Skotlex]
  2412. * Reduced drop slots from 15 to 10. [Skotlex]
  2413. * Updated mob_db.sql with the current data. [Skotlex]
  2414. * Updated setoption script command to receive a second (optional) argument
  2415. flag. If the flag is 1, the option is added to what the player currently
  2416. has; likewise using flag 2 removes only that option. No flag (or any other
  2417. value) is the older behaviour of removing all other options and setting
  2418. specificly what is passed. [Skotlex]
  2419. * Updated script_commands information for setoption due to this change.
  2420. [Skotlex]
  2421. * Small fix in npc-created chat rooms to properly include the terminating 0
  2422. on the chat's event. [Skotlex]
  2423. * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer
  2424. get reduced by 50% regardless of who is standing on the fog. [Skotlex]
  2425. * monster_ai&2 will now trigger the rude-attacked skill when the mob can't
  2426. move and the attacker is out of it's attack range. [Skotlex]
  2427. * Added missing icon for Joint Beat [Skotlex]
  2428. * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex]
  2429. * Treasure chests will now be excluded from the mob-drop listings
  2430. (@whodrops) [Skotlex]
  2431. * Fix on pc_skill which fixes overlapping when one gets more than one bonus
  2432. for the same skill. [Skotlex]
  2433. * Updated main.sql's loginlog table structure. [Skotlex]
  2434. * Added svn_update6533.sql to update the loginlog structure as suggested by
  2435. theultramage. [Skotlex]
  2436. * Cleaned up somewhat the implementation of BladeStop. [Skotlex]
  2437. * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet)
  2438. when crafted for non-players. [Skotlex]
  2439. * Script commands sc_start, sc_start2 and sc_start4 will now start
  2440. regardless of sc defense of the target player (that is, they cannot be
  2441. avoided/blocked) [Skotlex]
  2442. * Fixed a possible counter overflow in attacked_count, changed the var size
  2443. to unsigned char since the code can handle the overflow now. [Skotlex]
  2444. * Multiple targets again reduces armor defense, as reported by Tharis.
  2445. [Skotlex]
  2446. * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex]
  2447. * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex]
  2448. 2006/05/08
  2449. * Reverted the change that was making ES skills stun the caster always.
  2450. [Skotlex]
  2451. * Removed the fixpos packet which is sent whenever you are hit while moving
  2452. as Aegis doesn't sends this packet neither. [Skotlex]
  2453. * ES magic will now put the caster on stun for 0.5 secs regardless of
  2454. whether the skill-target is a mob or not. [Skotlex]
  2455. * Added function clif_party_join_info which sends packet 0x1e9 each time a
  2456. party-member joins. This packet (as redundant info as it has) should also
  2457. contain the field for "adoptability", but that needs to be coded in yet.
  2458. [Skotlex]
  2459. * Added clif_ParseAdoptRequest which does the basic adoption handling. More
  2460. checks and the reply packets still need to be coded in. [Skotlex]
  2461. * Happy State and TK stances won't dispel on death now. [Skotlex]
  2462. * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in
  2463. skill_check_condition now. [Skotlex]
  2464. * Modified TK-ranker infinite combos to behave as described by AuronX.
  2465. Refer to his thread in the development section for details. [Skotlex]
  2466. * Made all Soul Link Spirit skills not be castable on self. [Skotlex]
  2467. * Changed rate of NPC status effect skills to 50+10*lv% base chance
  2468. (guessed, but better than 100% for all levels) [Skotlex]
  2469. * Changed max level of NPC status effect skills to 5 [Skotlex]
  2470. * Increased max number of tries to find a random spot in maps to 1000 since
  2471. some maps have so many non-walkable tiles it's hard to find one in just 100
  2472. tries. [Skotlex]
  2473. * status_set_viewdata will remove the Wedding Option status when you set a
  2474. class that is not wedding. [Skotlex]
  2475. * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex]
  2476. * idletime will now be updated on attack-request, not on sit/standup
  2477. [Skotlex]
  2478. * Party members sitting will no longer be considered idle. [Skotlex]
  2479. * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used
  2480. with the disguise/undisguise script commands instead). [Skotlex]
  2481. * Moved Sharp Shooting display to the block with Auto-Counter (since that's
  2482. the other skill that can show critical as well) [Skotlex]
  2483. * Corrected some fields in the standing still packet (guild emblem being
  2484. stored as a Long when it should be Short) [Skotlex]
  2485. * Modified most fields of view_data to be unsigned shorts rather than
  2486. signed ones. [Skotlex]
  2487. * On-Touch NPCs will now make you stop walking when you trigger them.
  2488. [Skotlex]
  2489. * ShadowJump/JumpKick will make you land on the target's cell now.
  2490. [Skotlex]
  2491. * Fixed Kaahi triggering only once per skill duration. [Skotlex]
  2492. 2006/05/07
  2493. * Fixed readme/changelog.html [KillerBox]
  2494. * Removed old logs. [Lupus]
  2495. TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index
  2496. 2006/05/05
  2497. * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc
  2498. before sending one (as it's not required to send twice).
  2499. * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps
  2500. players and still continues execution to work). [Lance]
  2501. * Updated item_db.sql to current. [Skotlex]
  2502. * Fixed a bug in @commands, most likely the reason some people were still
  2503. getting crashes. [Skotlex]
  2504. * Fixed @commands not showing the last available commands (unless the total
  2505. amount of commands is divisible by ten) [Skotlex]
  2506. * Added a npc-script-event cache to avoid looking up event-scripts every
  2507. time they need to be executed. Events cached are all those defined in
  2508. script_config (on login, logout, mapchange, death, kill, level up) [Skotlex]
  2509. - Since the cache holds direct pointers to the npcs/events, do NOT unload
  2510. the related NPCs or you'll get dangling pointer crashes. However,
  2511. @reloadscript will work fine.
  2512. - Set the etc_log to on to see a summary of npcs/events loaded for script
  2513. execution on startup.
  2514. * The Rest bonus activated by using /doridori while in rest should now
  2515. trigger with all the class tree (TK/SL/SG) [Skotlex]
  2516. * Fixed Kaupe always triggering when the one who was under Kaupe was a
  2517. player rather than the one attacking... [Skotlex]
  2518. * /doridori now won't double the HP/SP regen of TKs, it only activates
  2519. their "happy" state. [Skotlex]
  2520. * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex]
  2521. * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex]
  2522. * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills
  2523. (even if there's no other TK around). [Skotlex]
  2524. * Added battle config settings view_range_rate and chase_range_rate to
  2525. adjust the view-range and chase-range (range2/range3) of the mob_db without
  2526. having to manually change them (battle/monster.conf) [Skotlex]
  2527. * Kaupe now will only block all skills of players, for non-players, only
  2528. normal attacks can be missed. [Skotlex]
  2529. * Moved the Kaite spell-reflect code after the damage calculation function,
  2530. so the reflected damage is exactly the damage the original target would
  2531. have received. Will only trigger if the damage to be reflected is above 0.
  2532. [Skotlex]
  2533. * OnEquip scripts will now trigger on log-on. [Skotlex]
  2534. * Infinite Endure will no longer give mdef bonus. [Skotlex]
  2535. * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to
  2536. start/end infinite endure. [Skotlex]
  2537. * Fixed Kaahi's SP cost per heal. [Skotlex]
  2538. * Now when walkdelay is set to 0, characters will stop walking when hit,
  2539. but will not have any walk delay. (previously setting walk delay to 0 would
  2540. not even stop characters from walking when hit) [Skotlex]
  2541. 2006/05/04
  2542. * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido]
  2543. * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex]
  2544. * Some clean-ups in the mob_ai [Skotlex]
  2545. * Improved atcommand autoloot, now displays droprate in percents and notices
  2546. player if autoloot is already on or off. Also simplified the code [Harbin, Kain],
  2547. commited by erKURITA
  2548. * Added one grace range in the mob_loot search function which should fix
  2549. mob_can_reach failing when invoked with the same distance that distance_bl
  2550. returned. [Skotlex]
  2551. * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex]
  2552. * Eska is now usable on bosses. [Skotlex]
  2553. * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex]
  2554. * clif_skill_failed will print out a debug line with the skill_id (since
  2555. the current null_po does not helps at all to fix it) [Skotlex]
  2556. * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex]
  2557. * Rewrote Kaahi to behave as it should. It will heal whatever amount of
  2558. damage accumulates in the time2 interval (500ms by default) after being
  2559. hit. [Skotlex]
  2560. * Changed skill_unit_move_unit_group to enable moving of all types of
  2561. ground-skills except ensembles (fixes warmth not following you) [Skotlex]
  2562. 2006/05/03
  2563. * Kaahi now triggers every 500ms rather than on every hit (but it only
  2564. heals if in those 500ms an attack that would previously trigger Kaahi has
  2565. taken effect). In other words, it works just like before, except damage
  2566. gets "buffered" into 500ms slots. [Skotlex]
  2567. * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex
  2568. * Knowledge will now only trigger if you logon to the memorized map, not
  2569. walk into it. [Skotlex]
  2570. * Corrected @whomap directly invoking msg_table[] rather than msg_txt()
  2571. [Skotlex]
  2572. * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong
  2573. and not fix the pet issue, but I doubt it'll cause any problems that won't
  2574. be fixed by making the pet move. [Skotlex]
  2575. * Updated Charge Attack's state from none to move_enable. [Skotlex]
  2576. * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex]
  2577. 2006/05/02
  2578. * Fixed standing up not really standing you up. [Skotlex]
  2579. * Moved battle_consume_ammo to the end of skill_castend_damage_id,
  2580. skill_castend_nodamage_id and skill_castend_pos2 rather than
  2581. battle_calc_weapon_attack. They will trigger when the player's arrow_atk
  2582. state is active and a ground skill was not invoked. It should fix all
  2583. issues with splash/ground skills consuming ammo per target rather than once
  2584. per skill use. [Skotlex]
  2585. * Added structure state to the ground skills, their fields are magic_power,
  2586. into_abyss and ammo_consume to indicate the states that were previously
  2587. stored in val3. [Skotlex]
  2588. * Implemented desperado as explained by Rockman-EXE. The skill-effect is
  2589. not showing up though, I'll need some logged packets to see what's missing.
  2590. [Skotlex]
  2591. * Removed the unit_can_move checks in skill cast-end, they should be
  2592. performed in skill_check_require when the skill's state is move_enabled.
  2593. [Skotlex]
  2594. * Changed extremity fist's state to move_enabled, the explosion spirits
  2595. check is now hardcoded. [Skotlex]
  2596. * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with
  2597. Haplo. [Skotlex]
  2598. * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are
  2599. impossible to steal unless you have at least 100% steal-rate (where steal
  2600. rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[
  2601. * Cleaned up clif_parse_action_request to enable sitting/standing while in
  2602. shops, interacting with npcs, etc. [Skotlex]
  2603. * Kaite now works against all types of spells. [Skotlex]
  2604. * Kaupe now works against all skills. [Skotlex]
  2605. * Sanctuary now won't damage non-enemies. [Skotlex]
  2606. * Blessing now will always give you bonus stats even if you are wearing
  2607. undead armor. [Skotlex]
  2608. * Modified how Rogue's treasure works so that you get +1% to your steal
  2609. rate rather than +0.01% to the final rate. [Skotlex]
  2610. * Rewrote Warmth to use ground-skill-units, it should behave now like in
  2611. officials (implementation is not quite the same, but it should yield the
  2612. same effects while consuming less bandwidth). "Stacking", as it's called,
  2613. is possible now, but limited to eA's minimum timer skill interval (100ms).
  2614. [Skotlex]
  2615. * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than
  2616. +5+lv to all stats (as explained by Playtester and Tharis on how the skill
  2617. behaves). [Skotlex]
  2618. * Allowed SG_FEEL memorizing the same map for all three. [Skotlex]
  2619. * SC_FUSION won't end when you die now. [Skotlex]
  2620. 2006/05/01
  2621. * Added knockback when you run into a wall during running. However
  2622. position is not being refreshed on the client yet... [Skotlex]
  2623. * Fixed pc_disguise not allowing you to "redisguise". [Skotlex]
  2624. * Corrected a crash when sd is null in npc_event [Skotlex]
  2625. * After testing to make sure it works properly, I'm including
  2626. new battle conf options to limit MVP drops. [Reddozen]
  2627. * Removed OPTION_XMAS, it seems to not exist.... [Skotlex]
  2628. * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO)
  2629. since it has a visual effect to use. [Skotlex]
  2630. * Corrected the value of OPTION_FLYING [Skotlex]
  2631. * Using SG_FUSION ends Soul Linked effect. [Skotlex]
  2632. * status_setviewdata will set your option accordingly when the previous/new
  2633. view-class is wedding or xmas suit. [Skotlex]
  2634. * Added function map_foreachinshootrange, behaves the same way as
  2635. map_foreachinrange, but it also performs a "shoot-path" check before
  2636. invoking the function. Used in the skill subtimer function if
  2637. skill_wall_check is defined. [Skotlex]
  2638. * Fixed AL_WARP displaying "Unknown Area" selections when you don't have
  2639. all memo points used up. [Skotlex]
  2640. * Fixed alive_count not being reset on skill unitsetting, which leads to
  2641. some groups not being cleared once all their units expire. [Skotlex]
  2642. * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved
  2643. to skill_counter additional effect so it may trigger even on miss. [Skotlex]
  2644. * SKA no longer blocks skills. [Skotlex]
  2645. * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance]