diff options
author | FlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-11-29 20:07:22 +0000 |
---|---|---|
committer | FlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-11-29 20:07:22 +0000 |
commit | 04190264ba7007c84a69b21ac65b3779841cc04b (patch) | |
tree | 1f330fd53e9557a34bf829f7f1ce2da30a2197b6 /Changelog-Trunk.txt | |
parent | b8dca07266d170be982122e6f6e6397a97d14200 (diff) | |
download | hercules-04190264ba7007c84a69b21ac65b3779841cc04b.tar.gz hercules-04190264ba7007c84a69b21ac65b3779841cc04b.tar.bz2 hercules-04190264ba7007c84a69b21ac65b3779841cc04b.tar.xz hercules-04190264ba7007c84a69b21ac65b3779841cc04b.zip |
- Probably fixed the Segmentation Faults we've been having.
Description: A player quits and it's session is freed and set to NULL,
but the char server already sent a packet with player information
(registers, storage, ...). If a message is sent in consequence of
updating that info, a segmentation fault happens because
session[sd->fd] is already NULL.
Fix: make shure the session of the target player is valid before
processing the rest of the char server's message.
- Some minor cleanups.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9366 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'Changelog-Trunk.txt')
-rw-r--r-- | Changelog-Trunk.txt | 7637 |
1 files changed, 3823 insertions, 3814 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index cc3a74dea..9056251d2 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -1,3814 +1,3823 @@ -Date Added
-
-AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
-IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
-
-2006/11/29
- * Fixed the new npc parsing code not accounting for windows-style line
- terminators, which as a side effect messed up mapflag parsing if the file
- had windows-style terminators, which coincidentally was the case for the
- nopvp file, which unfortunately meant that all towns became pvp! [Skotlex]
- * HT_PHANTASMIC no longer knocks back even when it misses. [Skotlex]
- * Earned exp by dead homuns will now be lost (same treatment as earned exp
- from players that died) [Skotlex]
- * Now gvg_dungeon mapflag will activate the other mapflags which are
- required: pvp, pvp_nocalcrank and pvp_noparty/pvp_noguild (they are forced
- to off if gvg_dungeon is on and viceversa) [Skotlex]
- * Cleaned the pvp ranking code so that it takes effect even if
- pvp_nocalcrank is active WHEN the map is a gvg_dungeon one. [Skotlex]
- * Now homuncs and their masters are the only ones who can use support
- skills on them. [Skotlex]
- * Some cleaning on the homunc speed calculating code, so that it correctly
- uses the default walk speed if the player has no speed yet. [Skotlex]
-2006/11/28
- * Fixed a typo which made the wedding_ignore_palette setting not work when
- you log on with them equipped [Skotlex]
- * Applied The Ultra Mage's patch to use strict npc header formatting
- parsing. Updated the relevant stock scripts/mapflags that didn't conform to
- the standard. [Skotlex]
- * Moved the blocking of casting supportive skills on homunculus from
- battle_check_target to status_check_skilluse as bct is not invoked unless
- the skill is offensive (or party/guild only) [Skotlex]
- * Cleaned up status_calc_bl_sub_hom, fixed recasting dex/str/vit/int
- bonuses skills making their atk/def/mdef stack with itself over and over.
- [Skotlex]
- * Updated sql files [Playtester]
- * Changing setting the Guild Master from pc_authok to clif_parse_LoadEndAck
- so that it will not fail to set the gmaster flag when the first person of a
- guild to log on is the guild master. [Skotlex]
- * Modified the way Storm Gust freeze's counter works. Now it checks for the
- caster of the Storm Gust, if it's the same as the previous hit, the counter
- is increased, otherwise, the ID is updated and the counter is changed to 1.
- [Skotlex]
- * Fixed always receiving at least 1 bexp/jexp even when the mob gives no
- exp at all. [Skotlex]
- * Changed write to send as suggested by TheUltraMage in:
- http://www.eathena.ws/board/index.php?showtopic=105417
- Hopefully that will take care of the SIGPIPE problem in Debian and cygwin. [FlavioJS]
- * Server name in core.c skipping '\\' characters. [FlavioJS]
- * Memory allocation functions using file,line,func from the invoking functions. [FlavioJS]
- * Other minor malloc changes. [FlavioJS]
-2006/11/27
- * Now when a player's "attack once" request fails due to range, the client
- is told to move to the target to attack it. This sort of fixes the problem
- of the client SPAMMING the server with attack requests from afar without
- even approaching the icewall. [Skotlex]
- * Updated the status change field "option" to an int rather than short.
- This fixes the option values for xmas/sightblaster not getting set, which
- could explain why some people crash when equipping weapons while in xmas
- suit. [Skotlex]
- * Fixed the Homunculus hungry timer not starting on login. [Skotlex]
- * Added logging for standard GM commands (/mm /b /kick etc) [KarLaeda]
- * Some cleanups on the trade_additem function. When specifying a qty of 0,
- an ack will be returned to the client so it doesn't gets stuck. [Skotlex]
- * Update sql files [Toms]
- * Corrected the skill animation for Absorb Spirits [Skotlex]
- * Cleaned up a bit the implementation of how Gravity Field blocks the
- caster from moving. [Skotlex]
- * Mob class-changing will fail if the new class is the same as the previous
- one. [Skotlex]
-2006/11/24
- * Homunc's min matk is now always equal to max matk [Skotlex]
- * Fixed EDP's damage being 100% more than it should (should be 4x, not 5x
- on normal attacks) [Skotlex]
- * Self Destruction will only hit everyone and not just enemies when used by
- mobs (non marine spheres) unless the map is a versus map. [Skotlex]
- * Spider Web's duration is now halved on players (before it was halved in
- pvp maps only) [Skotlex]
- * Likely fixed Homunculus not disappearing the second their intimacy hit 0.
- [Skotlex]
- * Fixed uninitialized variable fd being used in WFIFOHEAD in a few clif
- functions. [Skotlex]
- * Fixed the fact that the TURBO code breaks when you attempt to handle more
- than one connection at a time within the same function. However this broke
- map-server compilation, therefore, don't use TURBO yet! [Skotlex]
- * While at it, cleaned a few packet implementations in the char/login
- servers which were not only ugly, but had some really stupid flaws within.
- [Skotlex]
-2006/11/23
- * Completed Reddozen's hanging mapwarp code to support party and old syntax. [Lance]
- * Updated sql files [Playtester]
- * Made WFIFOHEAD() check for available buffer size remaining on the
- connection, and when there's not enough space, it will increase it.
- [Skotlex]
- * Added define TURBO to the Makefile. It enables MouseJstr's socket access
- optimization which should speed up the code when accessing the write/read
- buffers repeatedly within a function. [Skotlex]
- * Fixed the functions where the RFIFOHEAD/WFIFOHEAD functions were used
- incorrectly (prevents TURBO enabled compilations from finishing) [Skotlex]
-2006/11/22
- * Modified slaves_inherit_speed and slaves_inherit_mode so you get better
- control of when to copy/remove modes/speed. See the conf changelog for
- details. [Skotlex]
- * Reenabled usage of mode MD_CHANGETARGET, so mobs with mode 0x200 will be
- able to switch targets while attacking. [Skotlex]
- * Some cleanups around usage of session[] in the map server, hoping that it
- may fix some not very likely crashes. [Skotlex]
- * Rewrote a few messy @ commands. [Skotlex]
- * Fixed the homunc hungry timer being started when the homun data is
- received from the char-server and the homunc is NOT 'active'. [Skotlex]
-2006/11/21
- * Fixed the Auto-Berserk giving you back defense when it triggers during
- berserk's HP penalty. [Skotlex]
- * Some small changes in the pet ai to make it more responsive. [Skotlex]
- * Rewrote the pet looting behaviour (taken from the mob's), pets are much
- more smarter now when looting from multiple possible items. [Skotlex]
- * Fixed pets/homunc trying to be deleted twice when they had 0 intimacy and
- their master logs out. [Skotlex]
- * Added support for specifying ammo type = 99 in the skill_require_db file,
- it can be used to specify that any kind of ammo can be used with the skill,
- but you NEED to have ammo equipped. [Skotlex]
- * Corrected GS_DISARM, it is now a normal attack, which, when it connects,
- has a chance to do strip weapon at a 3*lv% rate (modified by dex) [Skotlex]
- * Fixed GS_PIERCINGSHOT, it should ignore defense [Skotlex]
- * Corrected Gatling Fever costing SP when trying to turn it off. Also,
- speed increases bonuses won't take effect while it's active. [Skotlex]
- * Updated the main makefile with a new OPT line. It is commented by default
- since it only works with GCC 4.X, when unset, it will hide away a huge
- amount of warnings that have to do with stuff that is not gonna be
- corrected in eA anyway. [Skotlex]
- * Corrected TripleAction's damage. It should do 150%*3 instead of 100*3%
- damage. [Skotlex]
- * Updated GS_CRACKER's stun chance using Doddler's info as reference.
- [Skotlex]
- * GS_FLING won't reduce armor defense when used on players. [Skotlex]
- * Moved ignoreAll to state.ignoreAll so it saves some space. [Skotlex]
- * Cleaned up clif_parse_Wis to prevent crashes from forged packets
- [Skotlex]
- * Cleaned up the implementation of the ignore list so it's more efficient.
- [Skotlex]
-2006/11/20
- * Implemented NPC_DEFENDER. Reduces ranged Physical+Misc damage by 80%
- [Skotlex]
- * Improved the battle config reader so it accepts hexadecimal values.
- Updated the monster_ai description to make use of this [Skotlex]
- * Added monster_ai&0x200. When set, mob skill delays are shared. That is,
- if the mob has several lines with the same skill, when the skill is used,
- the delay will be set to all of them, not just the one entry used.
- [Skotlex]
- * Corrected NPC_BARRIER so it grants 100 def/mdef (and not just mdef)
- [Skotlex]
- * Weapon ATK bonuses will now only apply to watk and NOT watk2 on players
- (on players watk2 is refine bonus) [Skotlex]
- * Corrected NPC_KEEPING. it should give 90 def, not 100 [Skotlex]
- * You now can't use other skills while a skill-induced "window" is up
- (teleport, refining, etc). However, be warned that we aren't quite sure how
- the server will clear this out if you decide to hit cancel on the window,
- so skill-blockage is likely to happen (temporary solution: whenever you
- change maps or warp the state is reset server-side). [Skotlex]
- * Fixed itemskill variable being cleared before parsing the skill, this
- causes auto-casted teleport to fail to skip the skill menu. It is now
- cleared on castend_pos/id directly. [Skotlex]
- * Skills with state 'move_enable' will now do a "walk path" check between
- target cell/object and caster instead of a "shoot path" check, this would
- fix skills like snap or charge from letting you "teleport" across pits.
- [Skotlex]
- * Raised the amount of skills that can stack on a single cell before the
- "in-area/out-area" detection code breaks to 24 (from 8) [Skotlex]
- * Fixed a crash in clif_SkillInfoBlock if the passed player already
- disconnected. [Skotlex]
- * Added limiting drop rate to 100% from item-bonuses that depend on the
- mob's level so that "@autoloot 100" will catch them. [Skotlex]
-2006/11/19
- * Removed security check since source level patch is applied.
- * Reverted select(), created prompt().
- * Hack protection from packet monkeys in clif_parse_NpcSelectMenu. [Lance]
- * Added 'cancel' button parsing in buildin_select menu system. Now scripts will continue
- to load if 'cancel' is pressed and 255 will be returned. [Lance]
-
-2006/11/17
- * Corrected use of the party invitation reply packet, thanks to FlavioJS.
- [Skotlex]
- * Fixed potential hack by modifying packet of whispers. [Lance]
- * Fixed potential crash in IRC processing message with '%' using *printf. [Lance]
- * Fixed memory leaking caused by homun_data not freed when removed. [Lance]
- * Fixed client not validating the chat-kick-request packet, which can cause
- crashes. [Skotlex]
- * Updated map_quit to handle removing of players who are not even
- authenticated yet. [Skotlex]
- * New connection requests are now also blocked when there's a player
- already online but hasn't finished loading yet. [Skotlex]
- * Because of these changes, the friendlist notification when people join
- has been moved to LoadEndAck from pc_authok [Skotlex]
-2006/11/16
- * Updated sql files [Toms]
- * For the sake of avoiding confusion, all script events are named with prefix 'On'
- from now on. [Lance]
- * Edited atcommand and charcommand syntax. Now it doesn't need the useless
- character name and ":". [Lance]
- * Shadow Jump and Kirikage won't "move" you if you use them in GvG grounds.
- Fixed Kirikage so it first warps you, and then you unhide. [Skotlex]
- * Corrected Zeny Nage so the Zeny spent on the attack is always the exact
- same value as the damage you are dealing. Also corrected it so it does half
- damage when used on players. [Skotlex]
- * Overlapping song/dances will now cause dissonance/ugly-dance level 1
- instead of retaining the level of their song/dance. [Skotlex]
- * Fixed wrong check in @petrename, thanks to The Ultra Mage.[Skotlex]
-2006/11/14
- * Early Christmas present. 3 new "features" which were very easy to code,
- and should help scripters tremendously. Eapp is quite a way from being
- ready, so these can't hurt:
- * Implemented Karma: It turns out that when someone has karma, the client
- believes this character is "evil", and will give you a cursor sword on top
- of them automatically. So now the code will let characters with karma to
- fight each other. This enables duels and other types of restricted pvp
- where only the characters with karma can hit each others, and the rest of
- players with neutral karma cannot be affected. Note that Karma cannot be
- negative, and it can have any value between 0 and 256 (any non-zero value
- makes them appear evil on the client). For now, characters with karma can
- hit each other regardless of karma value, but perhaps it may be better to
- let them to hit each other ONLY if they have the same karma (the whole
- duel implementation COULD be cleaned up using Karma instead!)
- * Added mapflags partylock and guildlock, which lock the state of the
- parties/guilds on said maps:
- partylock: blocks user party requests to create/invite/leave/kick
- guildlock: blocks user guild requests to create/invite/leave/expel/
- make alliance/make opposition/delete alliance/delete opposition/
- break guild
-2006/11/13
- * Fixed a bug where the char-txt server was incorrectly saving memos,
- causing character data to be lost on restart. [Skotlex]
- * HP Conversion will fail when used at max SP. It should not display any
- errors to the client. [Skotlex]
- * Modified yet again the login procedure to enable character variables to
- work on item scripts. It SHOULD work crashless now. Please report any
- problems it may cause.
- * Volcano/Deluge/Violent Gale are now interchangeable, in the sense that
- as long as one of these is out, casting any of the three will not consume
- gems, and will use the remaining time of the previous one. In turn, Land
- Protector will now always consume gems on every cast. [Skotlex]
- * Small cleanup in the Land protector code which may fix it not blocking
- AoE skills. [Skotlex]
- * Fixed the interpretation of "head_dir". Removed setting head_dir to match
- character direction in the whole code. Now it is only reset to 0 (look
- forward) when unit_setpos is invoked, or when a character begins walking.
- Thanks to FlavioJS for figuring out how the client parses the head
- direction. [Skotlex]
- * Moved status_calc_pc back to pc_authok. [Lance]
-2006/11/11
- * Fixed debug message in login_sql [KarLaeda]
-2006/11/10
- * Deluge/Violent Gale/Volcano tiles will now fail to be placed on cells
- that are already ocuppied by anything else. [Skotlex]
- * status_is_immune will now return 0 or the amount of immunity of the
- target. In which cases it returns 100 for WoH and the GTB bonus when they
- have passed the gtb_sc_immunity setting. This enables targetted spells to
- not "fail silently" unless GTB's magic reduction is 100. [Skotlex]
- * Fixed Homunculus being spawned as soon as they arrive from the
- char-server even if the Master has not spawned on the map yet. [Skotlex]
- * AL_TELEPORT now fails when used on top of Land Protector. [Skotlex]
- * Some minor cleanings in pc_setpos, it may (or not) help fix that
- homunc-caused "map_addblock" error message. [Skotlex]
- * Corrected fog of wall, so that the deleted/doubled-duration effects are
- calculated on a cell-by-cell basis. [Skotlex]
- * Updated Land Protector: It will now delete/block effects of ALL ground
- skills EXCEPT: Song/Dances/Traps (encores are still blocked). Land skills
- blocked/deleted by LP also can't be casted on top of an existing LP. The
- code uses the inf2 value of the skill to determine if it is a
- song/dance/trap. [Skotlex]
- * Ganbantein, mimicking LP, will now also remove ensembles. [Skotlex]
- * Fog of Wall will fail when casted on top of a Volcano/Violent Gale
- [Skotlex]
- * Applied FlavioJS's fix to the npc whisper system. [Skotlex]
-2006/11/09
- * Fixed status-change loading not working. [Skotlex]
- * Fixed permanent mob-spawn script-events not working. [Skotlex]
- * AL_CURE won't confuse undead players. [Skotlex]
- * Corrected the Fog of Wall check so that it lasts 2x when it is placed on
- TOP of a suiton/deluge, not when the caster is on top of them. [Skotlex]
- * Updated status_check_skilluse so that when the caster has a disabling
- status change (stun/petrify/etc) it will block the skill in all cases
- EXCEPT on cast-end when the skill is ground-targetted. [Skotlex]
- * Fixed Health Conversion skill formula bug. [Lupus]
-2006/11/08
- * Fixed Desperado's hit-rate, now it behaves as it should. [Skotlex]
- * The GVG map-packet will now also be sent for guild dungeon maps.
- [Skotlex]
- * Added clif_gospel_info which displays info about the buffs you are
- receiving. Thanks to Rayce for the packet information. [Skotlex]
- * Fixed Spider Web not ending when hit by a fireelemental attack. [Skotlex]
- * Cast-time reductions from status changes will not be executed until right
- before casting, to prevent status changes from ending when attempting to
- cast and the attempt fails (invalid cells, not enough sp, wrong target,
- etc, etc) [Skotlex]
- * Added check to prevent Wand of Hermod from seeking for a partner to
- encore, since the partner is supposed to be the warp. [Skotlex]
- * Corrected the mob spawn reading code so that the event-name can be up to
- 50 characters long (which is the actual event length) and so that it can
- read spaces within them, it will also strip the leading/trailing quotes if
- you use them so that the event is actually found on mob-death (so you can
- do stuff like "My NPC::OnDead" as a valid event). [Skotlex]
- * Moved the homunc inherit speed from the master from status_calc_pc to
- LoadEndAck, since the hom's speed matches that of the master each time the
- master changes maps. [Skotlex]
-2006/11/07
- * Applied FlavioJs's patch which enables colored console output for Windows
- systems. It also includes a config setting called
- "stdout_with_ansisequence" with which you can turn off the color codes (in
- case you are logging all output) [Skotlex]
- * Added error reporting when the max number of ground unit cells has been
- reached (this may be the reason why sometimes it fails to recognize when
- you step out of a song/dance/encore) [Skotlex]
- * Added passing the Endure effect to other devoted people. Note that the
- "hit count" is individual for each character, and only when it ends on the
- Crusader himself will that force it to end on everyone else. It also will
- not transfer on gvg grounds, but it does transfer in pvp. [Skotlex]
- * Fixed Reflect-Shield triggering Auto-Guard instead on devoted chars.
- [Skotlex]
- * Added a check to prevent casting ground skills on a target and vice-versa
- when said skill use packets are received. It really shouldn't be
- exploitable, but doing that certainly makes the server print a lot of
- "unknown skill used!" messages. [Skotlex]
- * Fixed map_foreachiddb and map_foreachpc so they don't encapsulate the
- variable arguments into a double va_arg list. Thanks to the Ultra Mage for
- the tip. [Skotlex]
- * Cleaned up the clif_hate/mob_info functions with the correct fields/usage
- as explained by Rayce. [Skotlex]
- * Implemented clif_feel_hate_reset packet to properly display the Angel of
- the Sun/Moon/Stars, thanks again to Rayce for the relevant information.
- [Skotlex]
- * LP will again block all land-stuff from being placed down on top of it
- for the exception of Song/Dance/Encores. [Skotlex]
-2006/11/06
- * Reapplied 'fix equipment scripts which are based on character variables not
- working.' [Lance]
- * Multiple Gunslinger skill corrections, refer to
- http://ro.doddlercon.com/guides/gunslinger.html for information source:
- [Skotlex]
- - Corrected Ground Drift. Splash range of 3x3, stackable and placeable
- underneath others, cast time is 2 secs. It's considered ranged, and it's
- bonus damage increase is defense ignoring, always neutral.
- - Corrected Bull's Eye implementation, it should deal normal damage against
- non brute/demi-human targets.
- - GS_DUST is now considered a short-range attack.
- - Implemented Desperado's hit rate based on distance to caster as it's
- believed to behave.
- - GS_TRACKING's range is no longer affected by Snake Eye.
- - GS_FLING's defense reduction is now 5*lv%
- * Suiton's Speed/Agi penalty will affect everyone when used in versus maps.
- * Corrected Kaupe so it doesn't ends on the first part of Soul Destroyer.
- [Skotlex]
- * Applied some cleaning to the way Tatami Gaeshi knocks back. [Skotlex]
- * Cleaned up the way mobskill_use checks for the correct event. It should
- fix unlimited mob-skill-casting issues. [Skotlex]
- * Removed the return code entry when logging GM reload-GM requests
- (login-sql),it'll just be stored as zero. [Skotlex]
- * Added a fix on socket.c to not pick INADDR_ANY when choosing our own IP.
- [Skotlex]
- * Applied the correction on maprespawnguildid so that it parses ALL players
- and not just those on a map. [Skotlex]
- * TK_JUMPKICK now dispels normal aspd/speed potions (not berserk pitched
- ones) and Preserve will be unable to block this. [Skotlex]
- * Soul Linkers are now inmune to SA_DISPEL [Skotlex]
- * You can now place everything (except magic skills) on top of LPs.
- [Skotlex]
- * Corrected Ganbantein to not touch song/dance/ensembles. [Skotlex]
- * Status_calc_pc will refuse to execute if the player is still tagged as a
- "new connection" and the invocation is not meant to be the first one.
- [Skotlex]
- * Swapped the order of checks in status_isimmune so that Wand of Hermod
- skill blocking takes precedence over GTB's [Skotlex]
- * Client packets will all be ignored while a player is not on a map until
- the LoadEndAck packet is received. [Skotlex]
- * Reverted changes, moved status_calc_pc(sd,1) back to pc_authok
- since it causes problems. [Lance]
- * Temperory fixed stability issue caused by initial status_calc_pc
- being placed AFTER another status_calc_pc. [Lance]
-2006/11/05
- * Updated sql files [Toms]
- * Updated perl files acording to rev 9135 [Toms]
-2006/11/04
- * Readded duel code in map_quit. Why it has been removed!? [LuzZza]
- * Converted itemdb tables to use smallint. Credits to ALZ. [Lance]
-2006/11/01
- * Reverted LK_Berserk HP requirement, as everything, including kRO X.2 and
- pRO X.3, points that way. [Vicious]
-2006/10/31
- * Fixed song/dance/encore cells not being placed down when casted on top of
- a land Protector. [Skotlex]
- * Update homunc's speed when master's speed changes, should avoid homunc's
- speed = 0 on login (homunc's stats are calculated before master's stats) [Toms]
- * When Kaizel (or super novice rebirth skill) triggers, you get debuffed
- now. [Skotlex]
- * Modified the player_cloak_check_type and monster_cloak_check_type
- settings. 1 makes it check for walls, 2 makes cloaking NOT end on normal
- attacks, and 4 makes cloaking NOT end when using skills. The default
- setting for players is still 1, but for mobs the default has been changed
- to 4. [Skotlex]
- * Non-players can now use all skills while hidden. [Skotlex]
- * Added a check to prevent adding negative damage to the total accumulated
- damage in mob_damage. It could fix some exploits, even though mob_damage
- should never be invoked with negative damage anyway. [Skotlex]
- * Implemented the property where the first attacker get's double exp-share
- than the others. Due to the way exp calculation is done, this bonus will
- not apply when you use exp_calc_type 1 (damage/max_hp) instead of the
- default (damage/total-damage). For now this bonus is done after calculating
- who is the MVP character instead of before. [Skotlex]
-2006/10/30
- * Fixed a little bug in event enqueue code [Toms]
- * Updated the code so mobs can use ChainAction as a targetted skill.
- [Skotlex]
- * Added GroundDrift effects for Wind (Stun) and Fire (knockback). The
- knockback value is unknown, so 3 is used for now. [Skotlex]
- * Cleaned up some more the steal code, now you can't steal the last slot
- regardless of skill level used. [Skotlex]
- * Added consideration of Chain Action when cloning GunSlingers. [Skotlex]
- * Modified battle_calc_return_damage to take the skill id as well, now
- magic damage return will not work on skills tagged as ground or self
- targetted. [Skotlex]
- * Fixed Gank not working at all with the default max steal tries setting.
- [Skotlex]
- * Soul Drain won't work with skills tagged as self-targetted. [Skotlex]
- * Improved the Suiton code so that the walk/agi penalty only applies to
- enemies of whoever casted the skill. [Skotlex]
- * Moved the initial status_calc_pc call to when you finish loading the map,
- should fix equipment scripts which are based on character variables not
- working. [Skotlex]
- * Fixed getcharid according to samples and docs. [Lupus]
- Thanks to joshuaali for pointing it out. eAPP has no such bug
-2006/10/27
- * Fixed mob-skill event "skillused" not triggering at all. [Skotlex]
- * Summoned mobs will only be removed from a map if their master is also
- removed (dynamic mobs) [Skotlex]
-2006/10/26
- * Updated sql files [Playtester]
- * Experimental tweak to npc_parse_function - Overwrite existing functions. [Lance]
-2006/10/25
- * Cleaned up some more the event dequeue code, it will no longer clear out
- the npc_id if there's no events waiting to be executed (why does it clears
- the npc_id anyway?) [Skotlex]
- * Because of possible conflicts with this change and the on-login script,
- now the on-login script is executed when the player has finished loading
- into their start-up map rather than as soon as receiving the registry
- variables from the char-server. [Skotlex]
- * Some cleaning of the pc_eventtimer and pc enqueue code, it should fix
- some memory leaks when the event counter does not matches with the actual
- number of queued timers during logout. [Skotlex]
- * Fixed "skill_sp_override_grffile: yes" causing crashes when parsing
- Homuncuus/Guild skills. [Skotlex]
- * Made the exp bonus settings be adjustable: [Skotlex]
- - exp_bonus_attacker: Indicates how much additional exp a mob gives per
- additional attacker (eg: 10 -> +10%*attacker)
- - exp_bonus_max_attacker: Indicates at which number of attackers the bonus
- is capped (eg: 5 -> 5 attackers, so a mob yield the same exp whether 5 or
- 10 people attack it)
- - Changed the way the party_even_share_bonus setting works. It now uses a
- simple linear bonus increase (eg: 10 -> +10%*party member)
- - The defaults are as explained by Tharis: +25%/attacker, capped at 12
- attackers, no party bonus. The first two can be found in exp.conf, the last
- one was left in party.conf
- * MG_STONECURSE and NPC_PETRIFYATTACK now use time1 to specify the
- "petrifying time". This value has been set to 5 seconds. [Skotlex]
- * Now when SC_STONE is triggered from status-change cards, it's petrifying
- duration will be passed as 0, causing the minimum (1 sec) to be used.
- [Skotlex]
- * Got rid of clones in src: old Novice Grounds map -> new_zone0? [Lupus]
-2006/10/24
- * Removed again your mdef reducing "petrifying" time as apparently it can't
- be reduced by mdef. [Skotlex]
- * Cleaned up the "show_steal_in_party" setting so it only takes effect when
- the item was successfully stolen (there was no point in telling you the
- item couldn't be stolen due to being overweight) [Skotlex]
- * Cleaned up the pc_steal_item implementation (again). It now uses a more
- random, simple approach in each steal attempt. [Skotlex]
- * Changed the way the skill_steal_max_tries work. Now it actually MEANS the
- max number of steal tries, use 0 to disable (unlimited tries). [Skotlex]
-2006/10/23
- * Added a bunch of important indexes when dealing with the log tables.
- Added upgrade_svn9050.sql which adds these indexes as well. [Skotlex]
- * Expanded the family check to work as it should, exp-share-range is
- respected, and the child is not considered for it (thanks to TheUltraMage
- for the investigation) [Skotlex]
- * Double Casting will no longer fail when used. [Skotlex]
- * Modified SC_STONE so that the duration of the "petrifying" time is 5 secs
- reduced by your natural resistance to petrify (which is mdef%) [Skotlex]
- * Modified the meaning of the third column in the skill_require_db. Instead
- of MaxHP, this is now called MaxHPTrigger. This column (which was
- previously unused by all skills) signals the limit HP% that you can have to
- be able to use the skill. For example, setting it to 20 means the skill is
- unusable if you have more than 20% life (note that this is merely a
- threshold setting, it won't actually substract HP when used!) [Skotlex]
- * Adjusted LK_BERSERK so you can only use it when you have 20% or less
- life. [Skotlex]
- * Removed NJ_TOBIDOUGU adding damage to W_HUUMA weapons which somehow got
- readded. [Skotlex]
- * When nonplayers use Cloaking, it will be forced to level 10 since mobs
- shouldn't have movement/attack restrictions while walking cloaked.
- [Skotlex]
-2006/10/20
- * Made HAMI_CASTLE use clif_slide rather than clif_fixpos. This should
- fix clientside problems when castling between two positions the (client)
- path finding can't find a walkable bath between anymore. [blackhole89]
- * Fixed the Homunc not spawning next to you after receiving it's data from
- the char-server. [Skotlex]
- * Fixed Charge Atk being able to go through chasm/pits. [Skotlex]
- * Moved the homunculus DB information from the player structure to the
- homun structure. Modified the homunculus creation packets to hold this
- information during creation, also, all initial values are handled by the
- map-server, the char server only assigns it a homun ID. [Skotlex]
- WARNING: This is yet untested! It's very possible something could had
- broken after changing the format/size of the homunc creation packets.
- * Added config setting "summon_flora_setting", which it you can decide now
- two things: a. Whether or not players can harm your floras outside versus
- grounds, and b. Whether or not you can summon out and mix different types
- of plants at the same time. [Skotlex]
- * Likely fixed pc_steal_item always failing to steal (it was attempting to
- steal random item IDs...) [Skotlex]
- * Cleaned up a bit the mob on-death event so that when the killer is a
- homunculus, it's master will be taken. Also, the variable killerrid will be
- set before running the script to specify who delivered the final blow. If
- the killerrid matches with the script attached player, you can be sure your
- player did the final blow to the mob, otherwise, the attached player is who
- did the most damage to the mob. [Skotlex]
-2006/10/19
- * Cleaned up the log.c file. [Skotlex]
- * Fixed log_chat not recording anything if the server is compiled in SQL
- mode and sql_logs is turned off (it should then record to a plain txt file)
- [Skotlex]
- * Fixed SG_FRIEND, it should be triggering when Monks do Combo Finish (not
- triple blows), and the trigger rate increase should be based on your known
- level of SG_FRIEND, not TK_COUNTER. [Skotlex]
- * Phantasmic arrow now knockbacks even if it misses. [Skotlex]
- * Adjusted the way Monk combo times work. The combo time is now always
- 300ms (adjusted by combo_delay_rate) which takes effect inmediately AFTER
- your current skill's canact-delay (which is why the particular skill delays
- were moved to skillcast_db) [Skotlex]
- * Modified skill_delayfix so it performs the can-act reduction from agi/dex
- for combos there. [Skotlex]
- * Modified pc_steal_item so that it behaves more closely to the way it does
- on Aegis. [Skotlex]
-2006/10/18
- * Added a overflow check when calculating party exp share. [Skotlex]
-2006/10/16
- * Adjusted UTSUSEMI/BUNSINJYUTSU so that they block range/melee weapon
- attacks and only melee misc attacks. This isn't 100% correct, but it's a
- better approximation to the way these skills behave. [Skotlex]
- * Emergency call &16 (disable skill from nowarpto maps) will now NOT block
- Emergency Call if that map is also a gvg-castle map. Makes it safe to turn
- on this option to prevent usage from special maps (like Lhz3) without
- crippling the skill during WoE. [Skotlex]
- * Applied most of Mpeg's work on Ninja Skills. For information see:
- http://gpegon.free.fr/ea/ninja_10-15-06_mpeg.txt [Skotlex]
- * When reinvoking a combo-time, the previous combo time will be terminated.
- This could fix the ongoing difficulties pulling off Monk combos. [Skotlex]
- * Fixed Esma-state not ending after casting it. [Skotlex]
- * Fixed @hominfo displaying intimacy on a 1/10k scale. [Skotlex]
-2006/10/14
- * Homun info window to show crit value. As default, homun does NOT crit,
- as monsters do not crit. This is purely for display purpose for players
- to identify their homon's luk value. [Vicious]
-2006/10/13
- * Base attack for non players is now calculated as str + [str/10]^2 (it
- does not has +dex/5+luk/5 which players do have) [Skotlex]
- * Fixed the char-sql server trying to read the gms off a "gm_db" config
- setting stead of "login_db" [Skotlex]
- * Corrected Throw Arrow/Musical Strike's damage formula [Skotlex]
- * Altered Trick Dead. It doesn't prevents skills from being casted on you
- now, but damage-based skills will do no damage. [Skotlex]
- * Made the battle_config.attack_attr_none apply to pets when using the
- "fixed damage" pet skill scripts. [Skotlex]
-2006/10/12
- * made @killmonster make the mobs drop items again. [Skotlex]
- * Added a temporary message when Angel of the Sun, Moon and Stars trigger
- so you know it triggered. [Skotlex]
- * When slaves_inherit_speed is set (which is also the default), homun will
- have the same speed of their master when spawned. [Skotlex]
- * When using Hatred and you already have a hate target, your current hate
- target is displayed now. [Skotlex]
-2006/10/11
- * Cleaned up the char-server code when the last point of a player is not
- found. First it'll check if there's any mapserver online, and then, if
- there is, it'll look for the major cities. If this fails, then the player
- will be told server is closed instead of trying to send him to a "random
- map". Will fix the char-server printing the misleading message "map
- server not found, sending to major city" when in reality there just
- aren't any map servers connected. [Skotlex]
- * Corrected the mob damagelog structure so that you can't exploit it by
- switching characters. [Skotlex]
-2006/10/09
- * Fixed crash when char-server sends to a "random" map-server online on
- connect. Thanks to TheUltraMage for pointing it out. [Skotlex]
- * Should have fixed being petrified not reducing your defense and
- increaseing your mdef. [Skotlex]
- * Fixed SC_NOCHAT printing the "skills are now available" message twice on
- natural expiration. [Skotlex]
-2006/10/08
- * Updated sql files [Playtester]
-2006/10/06
- * Updated Land Protector to block absolutely every land-based skills with
- the exception of Encores/Dances. [Skotlex]
- * Disabling status abnormalities will now reset a mob's target. [Skotlex]
- * Mob morphing also resets their target now. [Skotlex]
- * Monk combos no longer can ignore skill delay (delay skill for all their
- combo-related skills is ASPD) [Skotlex]
- * Now you can trade while in a chatroom. [Skotlex]
- * Fixed homun-txt reading when the file has DOS line-type delimiters (\r\n)
- [Skotlex]
-2006/10/05
- * skill_blown will now trigger on-touch npcs on the landing tile. [Skotlex]
- * Max trade distance has been reduced from 5 to 2. [Skotlex]
- * Undisguising will now resend the cart-contents. [Skotlex]
- * Added function npc_unload_duplicates(), it unloads all npcs that are a
- duplicate of the passed one. For use with @unloadnpc to prevent crashes
- when you unload the npc that has duplicates. [Skotlex]
-2006/10/04
- * Bowling bash now always hits twice regardless of situation. [Skotlex]
- * Added an underflow check to prevent sending to the client negative mdef2
- value (for Frenzy'ed characters) [Skotlex]
- * Modified pc_jobchange so that it automatically removes
- peco/falcon/cart/homun if the new job you are changing to does not possess
- the required skill for them. [Skotlex]
-2006/10/03
- * Fixed a possible crash with @reloadmobdb due to pet loot timers.
- [Skotlex]
- * Fixed a possible crash and a memory leak on the login-SQL server when
- parsing unban requests. [Skotlex]
- * Renamed setting delay_dependon_dex to delay_dependon_agi, the delay of
- skills is reduced now (when enabled) by AGI instead of DEX, which makes a
- lot more sense than DEX. [Skotlex]
-2006/10/02
- * Modified item-granded status resistance reduction to behave as explained
- by Vicious (Ragnarok Monthly magazine) [Skotlex]
- * Added the opt3 values to Eske [Skotlex]
- * Fixed the txt->sql converter only saving the very first character
- permanent variable. [Skotlex]
- * Fixed the txt->sql converter saving account-wide variables as
- character-wide ones. [Skotlex]
- * Renamed nopenalty mapflag to noexppenalty. Using nopenalty will turn
- on/off both noexppenalty and nozenypenalty now. [Skotlex]
-2006/10/01
- * Removed the speed adjustment per level of Increase/Decrease Agility
- [Skotlex]
- * Fixed humunculi skill exploit, thanks to mr.rkit [Lupus]
-2006/09/30
- * Rewrote the txt->sql converter. It now links directly to the char server
- files so that it should get auto-updated with any code changes in the
- later. [Skotlex]
- * The converter will now also convert: account-wide variables, parties,
- guilds, guild storage and guild castles. At this point the only two things
- not converted are login-server-wide account variables (##, they belong to
- the login converter) and homunculus (the SQL save function is messy and
- doesn't lends itself to be integrated with the converter the way all the
- other functions are). [Skotlex]
- * misceffect2 will no longer cause the effect on top of the source object
- when it is the fake npc. [Skotlex]
- * Added check so that Frost Nova doesn't hides hitting animation on
- targets. [Skotlex]
- * Added the missing brackets around the trade logs condition check, thanks
- to Coltaro. [Skotlex]
-2006/09/29
- * Spurt state will now trigger on Soul Linkers as well. [Skotlex]
- * Added a check un unit_run when unit_walktoxy fails. Should fix running
- getting you stuck sometimes when running on diagonals near obstacles.
- [Skotlex]
-2006/09/28
- * Merged the necessary changes to make the script engine support negative
- constants (db/const.txt). Thanks to Rayce (from jA) for the code. [Skotlex]
- * Cleaned up the skill.c code to take into account when skill_unitsetting
- returns null (skill failed), fixes a possible crash with Wand of Hermode
- [Skotlex]
-2006/09/27
- * Cleaned up status_get_party/guild_id, it should also fix a possible crash
- when invoking such a functio on a masterless pet. [Skotlex]
- * Sharp-Shooting will now display a skill animation. [Skotlex]
- * The no_spawn_on_player setting will now also work for static mobs, but
- only if the setting is set to 100 or higher. [Skotlex]
-2006/09/26
- * Yet again messed with the packet sent during a splash attack, but this
- time taking into account the packets that eA was using some many revisions
- ago. Tests are needed to see if Magnum Break/Grimtooth don't spam the skill
- animation anymore, and to see if GrandCross didn't break it's animation as
- well. [Skotlex]
- * Added function skill_dance_switch which handles converting overlapping
- song/dances to dissonance/ugly dance. It should make the overlapping area
- now behave completely like the mentioned song/dances (taking into account
- interval and target type changes). [Skotlex]
- * Updated battle_check_target so that non-offensive skills cannot be used
- on a homun except for the homun and it's master. [Skotlex]
- * Steal zeny won't work on treasure chests now. [Skotlex]
-2006/09/25
- * Added an ugly check so that Heal will display 0 when healing a berserked
- character (and it will again display full heal amount when healing a player
- who's at full life) [Skotlex]
- * Disabled again client-self-muting since it's causing too much trouble.
- [Skotlex]
- * Merged FlavioJS's script patch which should fix stuff like "mes ();"
- causing crashes. [Skotlex]
- * Item group reading will now complain when a line doesn't has enough
- fields. [Skotlex]
- * Fixed #baselevelup adding instead of substracting status points when used
- with negative levels. Also made it reset your stats if there wasn't enough
- to substract from. [Skotlex]
- * Applied FlavioJS's suggestion of expanding WFIFOPOS to also take the
- direction. This had the side effect of fixing the direction missing from
- the mob spawn packet, which explains why all npcs face north when you are
- within sight while doing a @reloadscript. [Skotlex]
- * Changed the order of packets in TK_HIGHJUMP, may fix the reports of
- getting stuck when jumping into a warp. [Skotlex]
- * Changed a bit the code of marionette control, where a redefined local
- variable may be the cause of mob-targetted Marionette Control stacking
- stats up. [Skotlex]
-2006/09/24
- * When the code auto-guesses that a skill should require ammo, it will
- accept any type of ammo for using it instead of only arrows. Fixes Magnum
- Break usage on Gunslingers. [Skotlex]
-2006/09/22
- * Probably fixed a signed/unsigned mismatch warning on the new socket code.
- [Skotlex]
- * Fixed the "map server claims to have char online, but this other map
- server also has it tagged as online" message triggering in some cases where
- it shouldn't. [Skotlex]
- * Fixed some maps in db/mapindex.txt being under the wrong id and added comments
- so this will not happen again. [Zephiris]
- --- ATTENTION! ---
- People running TXT servers will have to tell their players to redo their /memo
- points since the map ids of the old file were wrong.
-2006/09/21
- * Fixed a bug on "select" when skipping empty entries when the selected
- entry is the last. [Skotlex]
- * Improved a bit RFIFOFLUSH as suggested by Harbin. [Skotlex]
-2006/09/20
- * A mob's HP is set temporarily to 0 before invoking it's on-death script,
- prevents said scripts being able to "rekill" the mob indefinitely (if stuff
- like killmonster is used within) [Skotlex]
- * Some small cleanups in chat.c [Skotlex]
- * Fixed party_sub_count (TK_POWER) failing when the idle_no_share setting
- was disabled. [Skotlex]
- * Enabled Star Gladiators and Soul Linkers to do /doridori [Skotlex]
-2006/09/19
- * Fixed nocommand mapflag causing the "you can't use commands on this map"
- message to trigger one very single chat, instead of only for actual @/#
- command invocation. [Skotlex]
- * Added support for skipping empty string menu entries for the select()
- command (just as `menu` has it already) [Skotlex]
- * Fixed pc_set_hate_mob letting you place mobs on any of the three
- positions regardless of size [Skotlex]
- * The double continuation error will now display both scripts that
- triggered it. [Skotlex]
- * Loading the storage from the char-server will fail if player is already
- tagged in final save state. [Skotlex]
- * Removed setting ban_spoof_namer, sending invalid global-talk packets will
- now just kick the player out of the server. [Skotlex]
- * Added echoing messages back to self when using @/# commands on whispers
- and party/guild messages, to prevent the client from muting yourself.
- [Skotlex]
- * Fixed some gcc4 warnings [Toms]
-2006/09/18
- * Fixed Spider Web fire damage bonus. [Skotlex]
- * Made Global chat always reply back to you even on @/# commands, this
- prevents the client from muting yourself due to "hack". However, this same
- fix isn't easily applicable to @ commands invoked from whispers or
- party/guild messages, those are still pending. [Skotlex]
- * Merged Meruru's update to socket.c, which includes a rewritten parse
- function, which should hopefully be more efficient than the previous code.
- [Skotlex]
- * The new code includes support for two config settings
- (packet_athena.txt): frame_size, which can be used to alter the logic
- packet-size allowed by the code, and mode_neg, which when set to yes, sets
- TCP_NODELAY on all connections (defaults to yes). [Skotlex]
- * High-Jump is usable everywhere now, except that on maps where it
- previously failed, now will just make you jump in place. [Skotlex]
- * Fixed TK_RUN as per packets provided by AuronX. [Skotlex]
- * Moved the equipment/card resistances to status ailments outside of
- status_get_sc_def, so that they are applied only to rate, not duration.
- [Skotlex]
- * Modified the Asura code (again), hopefully movement sprite issues are
- fixed now [Skotlex]
- * @reloadscript scripts will no longer eliminate mobs with no respawn data.
- But watch out for possible bugs (I think someone mentioned 1 extra
- treasure box will spawn when you use it? This needs testing!) [Skotlex]
- * Made speed_add_rate a linearly stacking increase. [Skotlex]
- * Corrected a possible overflow when using show_mob_info to display the
- mob's up as a percent. [Skotlex]
- * Corrected the documentation for checkoption/checkoption1/checkoption2
- [Skotlex]
- * Reenabled client requesting to self mute, as the whole knockback packet
- issues of the past which were causing players to mute themselves when being
- knockback is no longer there. [Skotlex]
-2006/09/17
- * Fixed NPC_INVISIBLE's cloak ending after attacking once. [Skotlex]
- * Fixed SG_FUSION being castable without Soul Link state. [Skotlex]
- * Moved the item-use restriction SC checks from clif.c to pc_use_item,
- fixed Gravitation blocking potion usage on it's area of effect. [Skotlex]
- * Sphere Marines and Summoned Flora are now inmune to class-changing.
- [Skotlex]
-2006/09/16
- * Added monster_ai&256. When set, a monster will pick a random starting
- position to begin checking versus it's skills, otherwise, it will always
- begin checking from the beginning. [Skotlex]
- * Fixed the status change duration reduction equation was was totally
- wrong, thanks to k3dt [Skotlex]
-2006/09/15
- * Now mobs won't do a distance check to lose their target on every ai
- iteration, but only when they finish walking (unless you set monster_ai&1)
- [Skotlex]
- * The chase distance before a mob gives up following a player has been
- increased from view-size (range2) to min-chase (range3). [Skotlex]
- * Reverted the Summon Flora change where all plants were being summoned in
- one go. [Skotlex]
- * Moved the weapon repair effect to where it belongs (after successfully
- repairing an item) [Skotlex]
- * Added config setting "friend_auto_add" (battle/player.conf), if set, when
- you accept someone as your friend, both characters will show up on each
- other's friend list. [Skotlex]
-2006/09/14
- * Changed Extremity Fist's code to make you actually walk past your target,
- which displays a much more correct "animation" for the skill. Thanks to
- HiddenDragon for the information and code. [Skotlex]
- * Updated the item_db search functions so that when returning the
- dummy-item, it first updates the nameid to match the requested one, this
- prevents pc_additem later on giving you an item with ID 500 instead of the
- ID requested. [Skotlex]
- * Added a clif_skill_nodamage packet when using Repair Weapon, just to see
- what happens. [Skotlex]
- * Likely fixed "half" of the alliance being saved, which ends up in guilds
- that can attack another, but not viceversa. [Skotlex]
- * Added deleting of saved Status changes on character delete for the
- Char-TXT server. [Skotlex]
- * Fixed the can-act delay never being checked when requesting to use
- Homunculus Skills. [Skotlex]
- * Fixed warmth skills draining SP of the target, not the caster. [Skotlex]
- * When TK_DODGE triggers, it will no longer delay your attack or movement.
- [Skotlex]
- * Estimation /Sense/ whatever will no longer hide the vit bonus to mdef2,
- as reported by Playtester. [Skotlex]
- * Updated Summon Flora to summon the max number of possible plants on one
- cast. It will consume as many bottles as monsters summoned. Also cleaned up
- the function to be usable by non players. [Skotlex]
- * Shadow Jump no longer goes over walls. [Skotlex]
- * battle_calc_gvg_damage will be invoked in gvg maps regardless of woe
- time. [Skotlex]
- * NPC_MENTALBREAKER now zaps matk*lv SP based on observations by Tharis.
- [Skotlex]
- * md->class_ will be changed on mob-class-change to fix all class-change
- related bugs. On respawn, the spawn data will be used to revert to the
- original class. [Skotlex]
- * Improved the pet skillbonus timer for "eternal bonuses" cases where the
- bonus delay is 0. [Skotlex]
-2006/09/13
- * SC_CHANGE cannot override itself anymore. This fixes being able to
- "recast" the skill while it's still active to lengthen the duration AND
- reheal the target. [Skotlex]
- * Changed a bit the dnsbl lookup in the login servers to make it faster.
- [Skotlex]
- * Moved the pc rate modifiers from items
- (hp/sp/matk/hit/flee/cri/flee2/def2/mdef2/def/def2/speed) from
- status_calc_bl_sub_pc to status_calc_pc, as it simplifies code vastly, and
- also fixes Osiris card not applying to said bonuses. [Skotlex]
- * Fixed pc_damage_delay_rate not working, thanks to Orn. [Skotlex]
- * Modified the nocommand mapflag so you can specify the GM range that is
- blocked from using commands (eg: "prontera.gat mapflag nocommand 40"
- disables commands to characters in the GM range 0~39) [Skotlex]
- * Modified the char-server TXT whisper system to use the online_db to know
- to which map server forward whispers, instead of just sending the whisper
- to every map server. [Skotlex]
- * Readded the setting TCP_NODELAY on socket.c to see if it fixes the
- walk-lag issue. [Skotlex]
-2006/09/12
- * Modified the login SQL server so that case insensitive lookups use "where
- name = BINARY 'name'" instead of "where BINARY name = 'name'", since this
- way the name index should be used, and performance will no longer be
- heavily affected. [Skotlex]
- * Modified main.sql to add 4 missing indexes (thanks to ErkDog): char_id on
- the tables memo/friends, and online/name on the char table. Added
- upgrade_svn8728.sql to add these indexes to already existing tables.
- [Skotlex]
- * Updated convert_engine.sql to use TYPE instead of ENGINE to be compatible
- with Mysql 4 installations. [Skotlex]
- * Moved the morph restrictions from skill_additional_effect to
- mob_class_change, so that SA_MONOCELL will not convert clones, emperium, or
- treasure boxes. [Skotlex]
- * Fixed 'range' might be used uninitialized warning [Toms]
- * Added Jaguar's sql script to convert all tables to MyISAM. It's located
- in sql-files/convert_engine.sql WARNING: Using MyISAM is much faster than
- InnoDB, but you are strongly recommended to backup your database before
- switching engines since we don't know if eA is fully coded to work
- correctly with MyISAM yet. [Skotlex]
- * Added manual deletion of sc_data entries when deleting a character
- (char-SQL) [Skotlex]
- * Updated main.sql to use pure MyISAM tables, removed all foreign keys.
- [Skotlex]
- * Updated battle_switch to use strncmpi instead of strcmpi, it makes it so
- using "yessir" will match "yes", this is actually needed because if you set
- a config setting to "yes " (notice the trailing space), then the map config
- engine fails to read it right, and will set the config setting to 0 (no).
- [Skotlex]
- * Some corrections to hate_mob cleanup when triggering the Angel stuff. [Skotlex]
- * Updated the show_mob_info setting to add another space to the separating
- pipes, so that each field is separated by " | " instead of " |". [Skotlex]
- * Homunculus intimacy will go back to 500 on evolution. [Skotlex]
- * Baphomet splash damage will now hit nearby enemies regardless of flee
- (but the initial attack still has to connect for the splash to trigger)
- [Skotlex]
-2006/09/11
- * Modified set_nonblocking and setsocketoptions in socket.c, using eApp's
- code as reference. Hopefully should improve performance somewhat. [Skotlex]
- * Added a comment explaining what a comment is to login/char/map config
- files, as well as the main script config file. [Skotlex]
- * Modified SG_FEEL so that it works the same way that in Aegis
- (packet-wise) [Skotlex]
- * Added a comment to explain how to "remove" a string variable from the
- msg_athena entries. [Skotlex]
- * Summoned and slave mobs won't show up on @showmobs anymore. [Skotlex]
- * Moved Spider Web damage bonus from battle_calc_damage to battle_attr_fix,
- so that damage will be doubled based on the actual attack element.
- [Skotlex]
- * Adjusted autospell cards to trigger only on physical weapon attacks.
- [Skotlex]
- * Adjusted a bit the heal code, it should now show either the full heal
- amount, or 0, depending on whether the target was healed at all or not
- (this also means it shows 0 if you try to heal a full-life character.. but
- it's the closest I've gotten to make it display 0 on Berserked chars)
- [Skotlex]
- * Memorize will be consumed even on instant cast spells now. [Skotlex]
- * Berserk will end now if hit and remaining hp is less or equal to 100.
- [Skotlex]
- * Guild Aura will be removed on sc-load to prevent Guild Masters from
- getting that bonus from the old implementation. [Skotlex]
- * Added D-Kalck's fix of the TXT -> SQL converter [Playtester]
-2006/09/10
- * Thanks to KarLaeda, added missing function in @showmobs [Lupus]
- - Script function 'query_sql': In the TXT version it doesn't fill the array
- and always return -1. Added for scripts compatibility. Your scripts
- won't crash in TXT version. They can work it around.
- I suggest we need a function getversion()
- * Updated item_db.sql and mob_db.sql [Playtester]
-2006/09/09
- * Added a crash protection in case mapfreeblock unlock tries to free a null
- pointer. [Skotlex]
- * Moved perfect_hiding from state to special_state, so that it clears out
- when you remove your pet. [Skotlex]
- * Probably fixed the Taekwon Rest skills. [Skotlex]
- * Fixed a npc-timer memory leak on npc_unload ("[Warning]: ers_obj_destroy:
- X entries missing, continuing destruction. Manager for entries of size
- 16.") [Skotlex]
-2006/09/08
- * Unified the rest and ganster paradise code into a single function.
- [Skotlex]
- * Moved the Happy State trigger to the regen function, it now triggers at
- the same time SPTIME does. [Skotlex]
- * Cleaned up SG_HATE, hope it works now. [Skotlex]
- * Removed sg_miracle_skill_duration, replaced it with
- sg_miracle_skill_min_duration and sg_miracle_skill_max_duration, to specify
- a range for the duration of the skill. [Skotlex]
- * Added upgrade_svn8675.sql in case, for some reason, your guild table
- still has the emblem_data field as a 'blob' with "NOT NULL" specified.
- [Skotlex]
- * Fixed alliance/opposition making not cancelling out map-server-side when
- the guild already had max number of alliances/oppositions (thanks to k3dt)
- [Skotlex]
-2006/09/07
- * Fixed SC_BERSERK setting Hp to 100 when dispelled by unnatural means (eg:
- wand of hermod) [Skotlex]
- * Cleaned up the doridori parse clif function. [Skotlex]
- * Merged some of mpeg's work on NJ skills [Skotlex]
- * Removed the Warmth "stacking" code. [Skotlex]
- * Added back the effect of /doridori to skill-SP regen [Skotlex]
- * Implemented a rough version of Angel of the Sun/Moon/Stars, it has a low
- chance of triggering on doridori-boosted SP-regen events. However, it has
- no client-side messages yet (need to add these in) [Skotlex]
- * Added sg_angel_skill_ratio to specify rate at which the Angel skill
- triggers. [Skotlex]
- * Added unit_cancel_combo which takes care of ending a combo time and
- resuming normal attack 'inmediately' [Skotlex]
- * Cleaned up some the SG_HATE code, you can't change hate targets anymore.
- [Skotlex]
-2006/09/06
- * Fixed the memset in status_calc_pc, corrects some mysterious bugs such as
- item-drop bonuses suddenly not working anymore. [Skotlex]
- * Corrected SC_INCREASEAGI and SC_DECREASEAGI speed-change formula.
- [Skotlex]
- * Fixed Aex Aeterna ending on Soul Breaker's first half. [Skotlex]
- * Applied Orn's modification on speed increases/reductions with increase/
- decrease agi [Toms]
-2006/09/05
- * Removed setting mob_show_hp, it's been replaced now by mob_show_info,
- which can be used to specify what kind of info should be displayed from a
- mob. Current options are two different formats for Hp display, and current
- level (monster.conf). [Skotlex]
- * Fixed Signum Crucis Def reduction being 10+2*lv% instead of 10+4*lv%
- [Skotlex]
- * Applied the Ultra Mage's suggestion to have the map server strip trailing
- spaces/comments from the config files. It will also now print out when an
- unknown config setting is found. [Skotlex]
- * Fixed status change resistance not being invoked at all for pretty much
- all cases. [Skotlex]
- * Corrected SC_INTRAVISION not starting. [Skotlex]
- * Fixed crash when attempting to read a Label as a string on a script
- (thanks to End of Exam) [Skotlex]
- * Fixed possible crash when changing a chat-room's owner (thanks to End of
- Exam) [Skotlex]
- * Fixed dispell removing SC_NOCHAT [Skotlex]
- * Small fix which should correct skill_attack damaging hidden characters
- when it shouldn't. [Skotlex]
- * Fixed connect_until field being a smallint rather than int in the login
- table (upgrade with upgrade_svn8630.sql) [Skotlex]
-2006/09/04
- * Fixed crash when using Adaptation during an Encore. [Skotlex]
- * Should have fixed manner being reset to 0 on logout while muted.
- [Skotlex]
- * Removed status_get_sc_tick, duration and chance are now both handled by
- status_get_sc_def (this means status change duration and success rate
- both will always follow the very same formula) [Skotlex]
- * Fixed mob-kill experience getting screwed up when characters who did
- damage die/logout at the moment the mob dies. [Skotlex]
- * Should have fixed "sleep", thanks to Lance for figuring out the error.
- [Skotlex]
- * SC_REFLECTSHIELD will now be passed to devoted characters at cast-time.
- [Skotlex]
- * Added a check to make a mob's level 1 if the read level from the db is
- less than it. [Skotlex]
- * status_calc_misc will now be invoked in status_calc_bl even on the first
- call, since status could have gone up due to skill bonuses. [Skotlex]
- * Moved max HP/SP calculations to before invoking status_calc_misc
- [Skotlex]
- * Simplified distance and check_distance to use "aegis" methods (greater of
- dx/dy = distance), there's a new define in map.h called CIRCULAR_AREA, when
- set, the previous method is used, and "for each in range" calls will also
- check for distances, making most ground skills and battle system use real
- circles instead of squares. [Skotlex]
-2006/09/03
- * Fixed SC_BERSERK's no regen penalty lasting pretty much forever.
- [Skotlex]
-2006/09/02
- * SC_REGENERATION's val4 now holds the RGN flag of what is blocked rather
- than blocking all types of regen. [Skotlex]
- * LK_BERSERK will now only block natural regen on state-end. [Skotlex]
- * SC_EXTREMITYFIST/SC_DANCING/SC_EXPLOSIONSPIRITS will only block natural
- sp regen and not skill regen [Skotlex]
- * SC_REGENERATION blocking will be cancelled on logout now. [Skotlex]
- * Corrected SCB_LUK not updating SCB_BATK as well. [Skotlex]
-2006/09/01
- * Corrected script_commands description of getequipid, it returns -1, not 0
- on fail. [Skotlex]
- * Fixed the mob-id check during pet_db loading, it will also now print when
- a pet is not loaded due to having an invalid mob class specified. [Skotlex]
- * The "delete_timer error/no such timer" report will now print the related function [Toms]
- * The Clearing unused stack report will now print the related NPC [Toms]
- * The duplicate npc report will now print the related file name [Toms]
- * Added config setting "partial_name_scan", which specifies whether @ given
- names should use a partial string lookup or absolute name lookup. Defaults
- to no (gm.conf) [Skotlex]
- * Expanded status_calc_misc so it may also calculate the batk of characters
- as well as their regen data (if they have it) [Skotlex]
- * Fixed a memory leak when using charsave_method:1 [Skotlex]
- * Soul Breaker will now be affected by Lex Aeterna on both parts of the
- attack. [Skotlex]
- * Status changes with no skill and no SCB* data will now go through if they
- have an SI* icon. This should fix SC_MIRACLE [Skotlex]
- * Reverted switching a mob's adelay/amotion when the later is longer than
- the former, now both get updated to amotion. [Skotlex]
-2006/08/31
- * Moved the intimacy penalty of HFLI_SBR44 and HVAN_EXPLOSION to
- skill_counter_additional_effect [Skotlex]
- * Simplified skillnotok_hom by using an invocation to skillnotok [Skotlex]
- * Hopefully fixed BD_ADAPTATION [Skotlex]
- * Homun won't lose any intimacy on death now. [Skotlex]
- * Homun will be saved together with the master now (as long as the homun is
- active) [Skotlex]
- * Modified the error reporting in map_freeblock_unlock so that when there's
- an error, the reported line number is the file's linenumber plus the
- object's type *10000. This is for debug information to help track down the
- already-freed error. [Skotlex]
- * pc_adopt will now preserve the kid's job/job-level/experience. This means
- that if you adopt a Swordman level 45, it will become a baby-swordman level
- 45, with the exact same exp as before. [Skotlex]
- * Fixed new mob's name not sent to the client when the mob is morphed [Toms]
- * Added setting attack_walk_delay which specifies whether a character
- should (or not) be able to move inmediately after starting a normal attack
- (battle.conf). Defaults to 0 since that's what Aegis uses. [Skotlex]
- * Fixed @summon's delete timer being screwed up. [Skotlex]
- * Cleaned up a bit the summon script command. [Skotlex]
- * Fixed the clone script command's delete-timer being screwed up. [Skotlex]
-2006/08/30
- * Skill required-state will now only be checked on cast-begin, not
- cast-end. [Skotlex]
- * Added a check in status_calc_pc to prevent player rate adjustments from
- from going below 0. [Skotlex]
- * Removed sending normal-damage packets instead of skill packets for
- splash-damaged skills, since... well, that's how Aegis does it. [Skotlex]
- * Updated HLIF_CHANGE to work as explained by Tharis -> It now adds 30*lv
- vit and 20*lv int, is dispelled on warp, and can-act delay is 5+5*lv
- minutes. Hp/Sp is no longer set to 10 after a forced expiration. [Skotlex]
- * Fixed up char-sql compilation. [Skotlex]
- * Added a message to @clearweather stating when climate changes will
- dispel. [Skotlex]
- * Corrected @hidenpc saying that it's command name was "@npcoff" [Skotlex]
- * Updated itemdb reading on the char-sql server so that it reads both
- item_db and item_db2 files (totally untested yet) [Skotlex]
-2006/08/29
- * Added printing out whenever the irc-module attempts to connect, to debug
- whether the map-server lag is due to this or not. [Skotlex]
- * Mobs will now always chase players using hard-path seeks. [Skotlex]
- * monster_ai&1 now only signals whether mobs should update their target
- cell while chasing more frequently (rather than being state-driven like
- Aegis) [Skotlex]
- * Changed the defaults of view_range_rate and chase_range_rate to 120 to
- aproximate better Aegis's view ranges (which are square areas and not
- circles) [Skotlex]
- * Applied Mpeg's work on GS [Toms]
- ( http://gpegon.free.fr/ea/gunslinger_08-29-06_mpeg.txt )
- * Fixed a syntax error in @showmobs [Toms]
- * Added @showmobs. It shows selected mobs on your mini-map (excluding
- mini-bosses & MVP) thanks to KarLaeda for the command [Lupus]
-2006/08/28
- * Modified the dancing code and Moonlit Petals in particular, so that it is
- treated as an ensemble like any other, it will just knockback people when
- they step into it. [Skotlex]
- * The memory leak reports will now print out in the logs also the revision
- they belong to. [Skotlex]
- * Cleaned up the scriptable npc-shop code, it should be crash-proof now.
- [Skotlex]
- * Added TK level-up buffs to SG too, and extended them to 10 min [DracoRPG]
- * Added "Barefeet Mastery" effect to TK_RUN (thanks Tharis for both) [DracoRPG]
- * Changed the produce_db format, now there's a skill-lv column right after
- the skill-id column to specify required skill-level to craft this item.
- [Skotlex]
- * Modified the skill produce_db code to take into account the new skill-lv
- requirement. [Skotlex]
- * Fixed exp bonuses applying twice for the job-exp [Skotlex]
- * @reloadbattleconf will now also update the ragsrvinfo table on the
- char-server. [Skotlex]
- * Fixed homun hp/sp growth rates stacking with HP/SP passive increasing
- skills. [Skotlex]
-2006/08/27
- * Fixed undefined reference to 'malloc_set' in log.c [Toms]
- * Updated svn-revision reading, now it can read the new svn file system [Toms]
- * Fixed a bug with homunc which could spawn on a non-walkable cell [Toms]
-2006/08/26
- * Optional macro MEMSET_TURBO for faster low-level memory initializations. [Lance]
- * Small bug fix in read_homunculus_expdb (a warning was always displayed) [Toms]
- * Small adjustment on the mob_ai code which could fix mobs not chasing you
- if you hit them from the maximum possible diagonal distance. [Skotlex]
-2006/08/25
- * Cleaned some the skill unit removal added flag so that it signals whether
- the skill is being force-removed, or it has "naturally expired". [Skotlex]
- * The following skills will display a normal attack animation now:
- NPC_WATERATTACK, NPC_GROUNDATTACK, NPC_FIREATTACK, NPC_WINDATTACK,
- NPC_POISONATTACK, NPC_HOLYATTACK, NPC_DARKNESSATTACK,
- NPC_TELEKINESISATTACK, NPC_SPLASHATTACK
- * Skills that require a weapon and consume spirit spheres will no longer be
- auto-tagged to require ammo. [Skotlex]
- * Now MISC skills with delay 0 will also use the attack delay (if the skill
- is tagged to do damage) [Skotlex]
- * Added script commands roclass/eaclass to enable scripts to access eA's
- job format. Read script_commands.txt and ea_job_system.txt for a more
- complete explanation of how this job system works. [Skotlex]
- * Added a flag to skill_delunitgroup, skill_delunit & skill_unit_onlimit.
- If 1 is passed, it will avoid UNT_WARP_ACTIVE to be transformed in
- UNT_WARP_WAITING and will destroy it. [Toms]
- ( To avoid such crash : http://www.eathena.ws/board/index.php?showtopic=114102
- when the code need an empty slot and the oldest one is UNT_WARP_ACTIVE )
-2006/08/24
- * Little cleanup on homunc's code [Toms]
- * Modified @reloadmobdb & @reloadskilldb to reload homunc's db too [Toms]
- * Now when a mob's adelay is set to be less than the amotion, both values
- will be swapped (this is an attempt to understand how those mobs actually
- work on aegis) [Skotlex]
- * script command "isrefine" will no longer return always false for equip
- positions above 6 (this has not been needed since the addition of the
- refine column to tbe item_db many months ago) [Skotlex]
- * Added NPC_CRITICALSLASH to the list of skills that display as a normal
- attack. [Skotlex]
- * Reverted the previous change, changed the pet capture code to try to
- capture a mob based on their view class rather than actual class.
- [Skotlex]
- * Fixed the md->class_ variable not being updated when a mob's class is
- changed. [Skotlex]
- * Added setting clear_skills_on_warp to specify when a character's
- land-based skills are deleted when the caster changes maps. Defaults to all
- types. [Skotlex]
- * Should have fixed Brandish Spear not passing the flag to skill_attack,
- causing it to do miserable damage. [Skotlex]
- * Warp Portal will no longer be removed when caster steps through it (this
- is left to the new clear_skills_on_warp setting) [Skotlex]
- * Cleaned up status_percent_change to switch equations when the target has
- high hp to prevent overflows, also it will directly take hp/maxhp when a
- rate of 100 or higher is passed to prevent calculations. [Skotlex]
- * Traps and Land Elemental fields are no longer automatically removed on
- map change (handled now by clear_skills_on_warp) [Skotlex]
- * traps_setting &2 no longer does anything (handled now by blah blah)
- [Skotlex]
- * Applied some change from mpeg on Ninja Skills [Toms]
- * Put HVAN_Explosion based on max_hp instead of current hp [Toms]
-2006/08/23
- * Fixed mob_clone_spawn completely ignoring the mode variable. [Skotlex]
- * Fixed Energy Coat reducing and consuming more than it should when you
- have 100% SP [Skotlex]
- * Cleaned up getmapxy script function, also added support for type 4 so
- that it returns a player's homunculus position if such exists. [Skotlex]
- * SC_ARMOR_ELEMENT looks like gone away from status_change_start since ... rev 6791.
- Try to reimplement it. [Toms]
- * Fixed HVAN_EXPLOSION [Skotlex]
- * Frost Nova won't display a nodamage skill packet (still need to sort out
- a way to fix the splash damaged packets) [Skotlex]
- * Fixed a possible SIGSEGV on buildin_maprespawnguildid if the map is unknown [Toms]
- * Added debug on "Inifity loop" to know which script is making this loop [Toms]
-2006/08/22
- * More fixes to the splash code. Kamaitachi and Sharpshooting should
- display correctly now. [Skotlex]
- * Fixed a crash on the mobspawn script command. [Skotlex]
- * Made SC_FLEET increase batk as well as watk. [Skotlex]
- * Fixed gcc warning [Toms]
- * Fixed AM_REST not closing the homunc status window [Toms]
- * Fixed SC_NEN according to Mpeg [Toms]
- * Added a ShowStatus("Terminating...\n") on login-server_sql [Toms]
- * Some corrections to make Tatami Gaeshi work correctly. [Skotlex]
- * Fixed SBR44 doing 100% more damage than it should. [Skotlex]
- * Some more work on the splash skill code. Now splash-damaged enemies
- should show no animation at all, just the damage-number, while only the
- targetted character should still display the full skill animation.
- [Skotlex]
- * Modified the homun-txt file-save format to separate the name from the
- rest of fields with tabs (like character saving does), this may fix homun
- save/loading when using non-latin characters on the name, but be warned
- that it also means the previous homun-data files are lost! (unless you
- replace the comma before the start of a name with a tab) [Skotlex]
- * getnameditem will now also work on stackable items [Skotlex]
- * Corrected battle_calc_weapon_attack so that all skills ignore your
- left-hand weapon, and that the Katar's double-attack damage bonus for the
- offhand damage applies ONLY on normal attacks. [Skotlex]
- * Fixed Resurrect Homunculus's % to 20*lv% [Skotlex]
- * Added SQL update which should remove \' from guild names [Toms]
- * Added option to disable character deletion of certain levels [Lupus]
- check char_athena.conf for this option format
-2006/08/21
- * Some more cleaning up of the splash skill code. Now the passed hit value
- for the splash targetted mobs is 9 instead of 5, this allows multi-hitting
- splash skills to display the number of hits correctly. [Skotlex]
- * Fixed call homunc bug when the homunc was vapo and the master has change
- of map [Toms]
- * Fixed SQL-Guild Creation, guild name was escaped 2 times [Toms]
- * Some cleaning of the splash skills. Updated skill-attack to enable again
- passing of flag 0xF000 which signals that the skill level sent to the
- client should be -1 (no skill name shouted). Should (hopefully) clear/clean
- up a bunch of splash damage skill animation-related packets. [Skotlex]
- * Homun saving won't cap hp/sp to max hp/sp since a homun can have higher
- hp/sp than the one stated in the db (due to skill bonuses or status
- changes) [Skotlex]
- * Cleaned up some more the regen_data structure, so that
- skill/sitting-skill related data is optional (since only players have it).
- [Skotlex]
- * Fixed AM_RESURRECTION, thanks to RockmanEXE for %HP values [Toms]
- * Fixed HAMI_CASTLE, HAMI_DEFENCE & HLIF_AVOID [Toms]
- * Adjusted Glittering's success rate to 20+10*lv% [Skotlex]
- * Corrected isequipped() so that cards will not be tagged as "used up"
- unless all the specified items were found. [Skotlex]
- * Fixed a confusion in skill_attack using the src instead of dsrc for some
- calls, which was causing some problems with the KAITE check from AoE
- spells. [Skotlex]
- * Fixed ASC_BREAKER's misc damage part not having the ignore-element flag
- set. [Skotlex]
- * Moved homunc battle conf from misc.conf to homunc.conf [Toms]
- * Some cleaning in skill.c in regard to homun skills. [Skotlex]
- * Madness Canceller now stacks with other aspd bonuses, just like Berserk
- does. [Skotlex]
- * Removed config setting "muting_players", and expanded the manner_system
- config to specify how having negative manner (mute) affects a player (see
- battle/misc.conf). [Skotlex]
- * Expanded the pk_mode setting from no/yes to 0/1/2. 1 is normal pk_mode,
- if 2 is used, it makes killing players give you a loss of 5 manner points.
- [Skotlex]
- * Fixed WS_WEAPONREFINE always failing when at less than job 50. [Skotlex]
- * Fixed the Autosave routine not working when there's only one player
- online. [Skotlex]
- * Disabled command @rain since the client no longer supports it anyway.
- [Skotlex]
- * Fixed delitem not checking for the first slot's card, also optimized it
- so that it doesn't checks on the other slots. [Skotlex]
-2006/08/20
- * Added a check during mob_db loading so that the six basic stats, max hp
- and max sp are never below 1, as this could cause crashes when using
- certain skills. [Skotlex]
- * Gravitation now only blocks the caster from using potions. [Skotlex]
- * Corrected Madness Canceller letting you walk while the effect lasts.
- [Skotlex]
- * Splitted yet again ASC_BREAKER into a two-part attack. This time the
- int-based damage is a MISC type attack, and gets reduced by skills as such.
- [Skotlex]
- * Fixed "int format, long unsigned int arg" warning [Toms]
- * Fixed a warning when using cap_value(x, 0, x) on an unsigned value [Toms]
- * Added clif_skill_fail for homunc to skill_castend_id & skill_castend_pos [Toms]
- * Fixed homunc skill 8016 not considered as homunc skill [Toms]
- * @useskill will now cause your homun to use the skill instead of you if
- the skill is a Homun skill and you have an active homunculus. [Skotlex]
- * Reduced the Success Chance of GS_FLING to 10+10*lv% (Playtester told me
- that Vicious told him the chance was much lower like that) [Skotlex]
- * Fixed some Homunc issues with HR servers (capping some values) [Toms]
- * Added @hominfo command to obtain real values (not capped ones) [Toms]
-2006/08/19
- * Fixed @homlvup bug [Toms]
- * Fixed AM_REST & AM_RESU consumming SP if they fail [Toms]
- * Fixed homunc spawning bug (they was spawned after an AM_REST + master warp for example)[Toms]
- * Fixed GS_GROUNDDRIFT [Skotlex]
- * Increased chance of GS_DESPERADO connecting to 20% [Skotlex]
- * Fixed battle_calc_base_damage being called for the left hand even for
- non-dual-wielding attacks. left-hand damage was being set to 0 later
- anyway, so no exploit existed. [Skotlex]
- * Moved the weapon_atk_rate bonus to battle_calc_base_damage so that it'll
- apply correctly when dual-wielding different types of weapons. [Skotlex]
- * Fixed job-mask 0x100000 in the item_db enabling Dancers/Bards to use the
- items (0x80000 should be for them and 0x100000 should be currently unused)
- [Skotlex]
- * Fixed a possible sigsegv when deleting lif under Mental Change [Toms]
- * Fixed HAMI_CASTLE [Toms]
- * Fixed HLIF_CHANGE [Toms]
- * Updated HLIF_BRAIN skill [Toms]
- * Fixed homunculus intimacy on feeding [Toms]
- * Added homunculus_friendly_rate battle config [Toms]
- * Some compilation warnings fixed [Toms]
- * Added skill's required item check on homunc skills [Toms]
- * Add Condensed Red Potion as a required item for HLIF_HEAL [Toms]
-2006/08/18
- * Little code cleanup on last fix [Toms]
- * Fixed HLIF_HEAL healing the homunc instead of the master [Toms]
- * Fixed HLIF_AVOID not increasing walk speed of master [Toms]
- * Fixed the atk_rate (Turtle General Card) bonus not working on
- dual-wielders. [Skotlex]
- * Made HLIF_HEAL a self skill that auto-selects target to caster's master.
- [Skotlex]
- * Implemented SC_BLOODLUST and SC_CHANGE, cleaned up HLIF_CHANGE [Skotlex]
- * Applied a correction to HVAN_EXPLOSION [Skotlex]
- * Fixed Homun ASPD calculation being able to underflow and give you min
- speed. [Skotlex]
- * Added monster_ai&128 to make aggressive mobs ignore that behaviour of
- always picking Homun targets above player targets regardless of who is
- closer. [Skotlex]
- * Fixed homun info packet being unable to display HP/SP correctly once the
- values are above 32k. [Skotlex]
- * Applied Mpeg's work on ninja [Toms]
- * Fixed @homlvup [Toms]
- * Added guild_aura (skill.conf) setting so you can specify when it works
- and if it works on the guild-master itself. Defaults to working all the
- time on everyone except GM. [Skotlex]
- * Little code cleanup [Toms]
- * Cleaned merc_hom_evolution to avoid free'ing/realloc'ing [Toms]
- * Fixed "args of aFree is freed pointer" on Homunc deletion [Toms]
- * Changed unit_free so that it receives which cleartype should be used when
- the character is still on a map. Used this on status_damage so that mobs
- that do not respawn when killed will properly display the death animation.
- [Skotlex]
- * Fixed Energy Coat consuming 10x less SP per hit than it should.
- * Fixed signed/unsigned comparison issues with natural heal system [Toms]
-2006/08/17
- * Vaporize will no fail when the homun is dead. [Skotlex]
- * Corrected thhe double free issue that occurs when a homun dies and has no
- intimacy left. [Skotlex]
- * Fixed the charsave_method:1 saving/loading exp as signed ints rather than
- unsigned. [Skotlex]
- * Applied use of structure regen_data for a unified regen module. Natural
- and skill-heal is handled by this structure, while sitting-skill-heal is
- still player dependant (mostly because the other object types can't sit)
- [Skotlex]
- * Cleaned up the status calc code for homun by moving it from
- status_calc_bl_sub_homun to status_calc_homun (where it should had always
- been) [Skotlex]
- * Updated SQL files [Playtester]
- * Corrected map_random_dir algorithm [Toms]
- * Fixed homunc natural heal and little code cleanup [Toms]
- * Changed AM_CALLHOMUN Skill to spawn the homunc at 1 cell from his master [Toms]
-2006/08/16
- * Fixed being unable to recast Adrenaline Rush to reset the duration
- timers. [Skotlex]
- * Cleaned up skill_get_range2 so that using range 0 for non-self skills
- uses the caster's attack range. [Skotlex]
- * Fixed AM_CALLHOMUN checking for an embryo when you have a vaporized
- homun. [Skotlex]
- * Spirit of Wizard will now consume an item 7321 each time it blocks
- reflected magic. [Skotlex]
- * Added script command jobname, retrieves a given's class name as per the
- appropiate msg_athena.txt entry (this command should had been added years
- ago) [Skotlex]
- * Fixed null-pointer crash on Evolving a homunculus. [Skotlex]
- * @produce now can make any kind of equipment [Skotlex]
- * Made HLIF_AVOID and HAMI_DEFENCE cause the status change on both caster
- and target. [Skotlex]
- * AM_REST shouldn't be checking for a range now (since it's a self skill)
- [Skotlex]
- * Updated mob_ai so that mobs will use their rude-attacked skill when they
- can't reach their current target. [Skotlex]
- * Fixed the default txt config making pets be saved to the homun file
- instead of to the pet file. [Skotlex]
- * Now arrow-consuming skills where your main weapon is a whip or musical
- instrument WILL count as arrow-type attacks, using the atk of the arrow and
- all related bonuses. [Skotlex]
- * Fixed some homun timer initialization code. [Skotlex]
-2006/08/15
- * Applied multiple fixes which should take care of making homun save/load
- work on TXT now. [Skotlex]
- * Added Gatling Fever's batk bonus. [Skotlex]
- * Some cleaning in status_damage which should prevent trying to free
- already free'd pointers when unit_remove_map invokes unit_free (when
- status_damage was going to invoke unit_free anyway) [Skotlex]
- * Delete homunc's skills from sql when the homunc is destroyed [Toms]
- * Homunc Timers should be disabled when the homunc is vaporized or dead an re-enabled on call/resu [Toms]
- * Updated vc-project files to compile with the new int_homun files.
- [Skotlex]
- * Hopefully fixed the crash when using charsave_method = 1 [Skotlex]
- * Moved s_pet structure from map_session_data to pet_data, this enabled the
- removal of a few redundant values in the pet_data structure (name, class,
- equip) [Skotlex]
- * Cleaned up some of the pet related @/# commands, same for some script
- commands. [Skotlex]
- * Pet offensive skills who's inf value is self will be casted on the pet
- now (for stuff like Grand Cross) [Skotlex]
- * Added homun saving/loading support to char-TXT. Note that this is
- completely untested, so it may be as good as broken. [Skotlex]
- * Added a crash-fix on status_calc_bl_sub_homun to abort in case the homun
- has no master (need to clean up this function later) [Skotlex]
- * Tested char-txt load/save, it seems to be working fine, but you should
- STILL backup, as I only launched the server (read old character format),
- closed it down (saved into the new format) and relaunch it (read the new
- format) and it didn't give problems (but there's still the possibility of
- some field being read in the incorrect offset or such). [Skotlex]
- * Updated the char save structure for char-TXT servers so that the homun id
- will be saved, now also the map info (last point, save point, memo maps)
- are now saved using the mapindex rather than the string. BACKUP BEFORE
- UPDATING since this code isn't yet tested. [Skotlex]
- * Cleaned up a bit the char-saving code, added overflow crash prevention in
- case there are more memos than the max-allowed saved. [Skotlex]
- * AM_CALLHOMUN can now be used to recall vaporized homuns. [Skotlex]
- * AM_RESURRECTHOMUN will now fail when the homun is vaporized. [Skotlex]
- * Added SCB_DYE which marks which status-changes need a forced cloth dye
- change to 0 due to sprite issues. Currently only NJ_BUNSINJYUTSU's status
- uses it. [Skotlex]
- * Asura Strike now moves you to the target on fail always (unless the
- target does not exists or is in another map or there's a obstacle on the
- way) [Skotlex]
- * Corrected skill_attack_area hitting dead characters on it's splash range.
- [Skotlex]
- * Swapped the values for OPTION_XMAS and OPTION_FLYING. This should enable
- SG to show the fly animation again, even if sometimes others will see him
- as Santa. As for xmas cloth, it shouldn't make much of a difference since
- the view class is changed to christmas anyway. [Skotlex]
- * Made AM_CALLHOMUN and AM_RESURRECTHOMUN be like the wedding skills, where
- they automatically pick a spot around you. [Skotlex]
- * Cleaned up some the AM_RESURRECTHOMUN code. Hopefully it works now.
- [Skotlex]
- * Cleaned up some the hom evolution code. [Skotlex]
- * Fixed SIGSEGV with homunc save [Toms]
-2006/08/14
- * Removed support for negative autosave intervals, instead added a
- minsave_interval setting which specifies which is the minimum time between
- character saves. Default to 100ms (map_athena.conf). [Skotlex]
- * Sacrifice no longer shows damage to self. [Skotlex]
- * When Asura fails, the skill display will still come off. [Skotlex]
- * Lots of cleaning of the Homun-code. Perhaps the crashes as of late will
- be fixed now (reusing AM_CALLHOMUN seems to be the cause of them)
- [Skotlex]
- * Increased Run's walk speed bonus to 25->50% [Skotlex]
- * Modified emergency_call setting to allow for more specific configuration
- (woe/non-woe, gvg-grounds/non-gvg-grounds, disable from nowarpto maps), see
- skill.conf for details. [Skotlex]
- * Fixed script engine allowing scripts to set a player's zeny to negative
- values. [Skotlex]
- * Fixed setting hide_woe_damage making even "miss" attacks seem to connect.
- [Skotlex]
- * When readjusting the fame-list, the last entry's id is also reset (may
- fix characters appearing more than once on it?) [Skotlex]
-2006/08/13
- * Removed @itemcheck as it was totally pointless. [Skotlex]
- * Corrected states killer/killable being easily dispellable. [Skotlex]
- * Fixed the totally wrong text messages being used for @killer/@killable
- related atcommands, added appropiate entries to msg_athena [Skotlex]
- * Magic and Misc attacks will now get type "flee" when they do less than 1
- damage, this blocks them from causing additional status effects when they
- are blocked. [Skotlex]
- * Cleaned up a bit the Basilica code, it should now properly end when you
- walk. [Skotlex]
- * Fixed some logs not working when you enabled all logs. [Skotlex]
- * Corrected unmute being a level 60 command by default (should be 80)
- [Skotlex]
- * Corrected the mapif_parse_PartyChangeMap function to correctly update
- level-range when someone logs on/off, fixes being unable to set even-share
- on once it's been broken even when the characters out of range logoff.
- [Skotlex]
-2006/08/11
- * Fixed Kagebunshin no Jutsu crashing for dyes > 0; though this solution
- might seem hackish (changing clothes colour to 0 when it starts while
- storing original colour back in val4, restoring original dye upon
- end), I believe this is the best way there currently is to solve
- the issue. [blackhole89]
- * Fixed Dancers/Bards being able to use normal attacks while performing.
- [Skotlex]
-2006/08/10
- * Fixed the item group bonus not working. [Skotlex]
- * Fixed songs/dances always being considered overlapped with themselves.
- [Skotlex]
- * Added some additional song/dance overlap code that should correctly
- change the effect of songs/dances when they overlap. [Skotlex]
- * Added a check so that the status-change packet is always send to self
- when the inflicted char is a player disguised. [Skotlex]
- * Code cleanup on homunc, they stay in memory until player disconnect or
- homunc destruction [Toms]
- * Corrected Advanced Jobs HP bonus from 30% -> 25% [Skotlex]
- * Hopefully fixed family-party-even-share not breaking when a member logs
- out. [Skotlex]
- * Should have fixed the login-sql crash when passed user-name's length is
- beyond the limit. [Skotlex]
- * Changed setting attack_attr_none to affect all neutral-element attacks.
- Basicly, this setting is now used to determine who can hit for full damage
- always when using neutral-attacks (defaults to non-players) [Skotlex]
- * Fixed two instances in the login-sql server where the ip in the log-login
- table was being stored backwards. [Skotlex]
- * Now when a skill's range is 0 and the skill is NOT casted on self, it
- will take the basic weapon's range (without Vulture/Snake Eye bonus).
- [Skotlex]
- * Now when a duration is not specified, sc_start/sc_start2/sc_start4 will
- try to guess the duration by extracting it from the skill_db (it uses
- skill_get_time on whatever skill is associated to the status-change using
- val1 as skill-level) [Skotlex]
- * Some cleanups on trade_tradeaccept to prevent packets being resent when
- they shouldn't. [Skotlex]
- * Fixed syntax error in 'guild' create table statement [Toms]
-2006/08/09
- * Fixed Asura not wasting all SP away when it fails on cast-end. [Skotlex]
- * Fixed homunc skill up bug [Toms]
- * Adjusted some the dance/song/encore code so that the source of an
- ensemble will always get checked, so that walking out of an ensemble skill
- should make it end now. However, it's likely this is not completely solved
- yet and will require further tweaking. [Skotlex]
- * Added crash protection to the mob_db txt reading when the mob_db file has
- lines with insufficient number of columns. [Skotlex]
- * Moved the class-change code from battle_calc_weapon_attack to
- skill_additional_effect. Alchemist summons now also have a chance of
- triggering polymorphing. [Skotlex]
- * Removed the code which was auto-setting attacks that do no damage to type
- FLEE, since that was disabling status-effects which should incur even when
- the damage was blocked. [Skotlex]
- * Trade requests will now fail when either character is unable to act
- (character in storage, vending, interacting with an npc, petrified, etc)
- [Skotlex]
- * Heard skotlex voice, changed all msg_table[] into msg_txt() in atcommand.c [Toms]
-2006/08/08
- * Fixed the char-server not invoking the party_calc_state function when the
- third party-member is added to a party, hence failing to check for families
- and disabling even share from them unless all three relog first (state is
- correctly calculated when party is first loaded). [Skotlex]
- * Crash-protections in the mail-checking function. [Skotlex]
- * Some additional parenthesis on equipment check in pc_equipitem, seems to
- have fixed the mid/lower headgear-sprites not showing up. [Skotlex]
- * Added back missing state set to prevent Ankle-Snare from being retrieved
- after the target dies. [Skotlex]
- * Fixed compilation warning [Toms]
- * Added a check to handle Spider Web as a targetted skill. If there's more
- than one character on the targetted cell, a different one may get trapped,
- but it will mostly do as it is now. [Skotlex]
- * Added check to Asura so that it will move you to the target when it fails
- ONLY when you can cast the skill on the target (not stunned, asleep, target
- not hidden, etc) [Skotlex]
- * Changed the map_freeblock_unlock code so that when there's an "already
- free'd pointer" error, the memory manager will print out the invoking
- function rather than map_freeblock_unlock, this should help fix it up next
- time it happens and is reported. [Skotlex]
- * Casting Kaensin will clear out Suiton and viceversa now. [Skotlex]
- * Fixed drop-rates (@whodrops) getting duplicates when you use @reloadmobdb
- [Skotlex]
- * Fixed unjailing not sending characters to Prontera. [Skotlex]
- * Fixed yet again AS_SPLASHER doing full damage on all characters. Now you
- can use the NK split damage value in the skill_db if you want damage
- divided by the amount of targets rather than by 2. [Skotlex]
- * Fixed crash on the battle_drain functions. [Skotlex]
- * Cleaned up HAMI_CASTLE, HLIF_AVOID, HAMI_DEFENCE so that it's usable by
- other types of objects other than Homunculus. [Skotlex]
- * Cleaned up the Asura Strike code so that the SP/Spheres/States is not
- consumed when the skill fails due to Fog of Wall. [Skotlex]
- * When a negative delay for a skill is specified, this delay is now added
- on top of the character's amotion rather than adelay [Skotlex]
- * Modified main.sql to make the guild table allow NULL on the emblem data.
- [Skotlex]
- * Added file conf-tmpl/Changelog.txt to log config changes. [Skotlex]
-2006/08/07
- * Fixed the login-sql server replying to the change-sex packet with the
- wrong gender, causing the char-server to screw-up job-change updates.
- [Skotlex]
- * Cleaned up the apparent mess that is pc_skill. Hopefully it SHOULD work as
- described on the docs now, this should also fix adopting not correctly
- giving the family-related skills. The flag value of skill should be: 0 to
- set the skill (if skill level is 0, this removes a learned skill), 1 grants
- the skill as an item bonus which is temporary, and 2 will add a skill bonus
- like 1, except the skill level adds up to whatever level already known of
- that skill. [Skotlex]
- * Fixed EQP_WEAPON related code messing up with both weapon AND shield.
- [Skotlex]
- * Cleaned up the Asura code so that when the skill fails your
- SP/Spheres/Fury are all taken away always, as well as moving you next to
- the target (as long as the target still exists within a reachable path from
- your position) [Skotlex]
- * SC_GUILDAURA is now removed on logout. [Skotlex]
- * Fixed Venom Splasher doing half-damage instead of full-damage to the
- "exploding" character. [Skotlex]
- * Hopefully fixed the party_even_share cast-overflow bug as reported by
- Adobe. [Skotlex]
- * Standarized the autosave interval setting to be always in seconds
- regardless of type. [Skotlex]
- * Moved the "bosses can't be knockback" logic from battle_calc_* functions
- and placed it on skill_blown. [Skotlex]
- * Some parenthesis cleanup before invoking battle_calc_base_damage, could
- be fixing the current issue with arrow attacks not adding the arrow damage.
- [Skotlex]
- * Fixed the map_search_freecell error which was making mobs fail to
- respawn. [Skotlex]
- * Added in Lupus's suggestion of not making multi-slot headgears set all
- slot view-ids, which supposedly causes the client to re-draw the headgear
- multiple times on characters. [Skotlex]
- * Fixed HT_BLITZBEAT hitting neutral characters when it auto-triggers.
- [Skotlex]
- * Simplified the Tatami Gaeshi code. [Skotlex]
- * Fixed AS_SPLASHER doing full damage on everyone except targetted char
- instead of the other way around. [Skotlex]
- * Fixed KAENSIN clearing out SUITON cells and viceversa. [Skotlex]
- * The spawn area is now seen as range rather than absolute for mob spawn
- lines. This means that x,y,10,10 will spawn the mob on a 21x21 grid around
- the given x,y point. [Skotlex]
- * Some clean up of the mob-spawn code. Now you can specify negative areas,
- so that a spawn location such as 100,150,0,-1 will spawn a mob always on
- x=100, but any Y value of the current map. [Skotlex]
- * Reflected damage will now also have a chance of draining hp/sp. [Skotlex]
- * Adjusted the order in which option/sc change packets are sent to match
- Aegis's [Skotlex]
- * Added script command getpartyleader through which you can retrieve
- various information of a party's leader. See doc/script_commands.txt for
- further information. [Skotlex]
- * mpeg's Ninja work [Vicious]
- * Adjusted Battle_check_target so that alchemist summoned mobs are
- targetted by everyone as long as 1. The top-level master is a player and 2.
- the actual attacker is not a mob-type. [Skotlex]
- * Added config force_random_spawn which overrides the spawn-files defined
- coordinates to make all mobs always spawn randomly on the map. [Skotlex]
- * SC_SPEEDUP0 is no longer dispellable by SA_DISPEL [Skotlex]
-2006/08/06
- * Updated item_db.sql & mob_db.sql to latest. [Toms]
- * Little fixes on homunc (hp/sp are now saved and init stats changed) [Toms]
-2006/08/04
- * Added a commented piece of code at the end of clif_parse_LoadEndAck which
- will update your direction to wherever you were facing before warping.
- Should this be the default? Nearby people DO see you facing on the same
- direction before warping, it's only your client that will always see you
- facing north on spawn (the spawn packet does contain direction
- information). [Skotlex]
- * Updated @mobinfo to display slots in the drop information. [Skotlex]
- * Fixed flag.elefix not being respected in battle_calc_misc_damage.
- [Skotlex]
- * Some code cleanups in battle_calc_damage. [Skotlex]
- * Modified bAddItemHealRate so it can receive both item-id and item-group
- values (since the first item-id is +500, there's no risk of mixing them
- up). [Skotlex]
- * Removed settings enemy_critical_rate, homun_critical_rate. Added settings
- enable_critical (defaults to specify only players), mob_critical_rate and
- critical_rate. The last applies to all non-mobs and non-players
- (battle/battle.conf) [Skotlex]
- * Removed settings mob_npc_warp, mob_warpportal. Replaced with setting
- mob_warp which specifies which types of warp can a mob step into
- (battle/monster.conf) [Skotlex]
- * Enabled Mastery damage on Soul Breaker again, moved adv katar mastery out
- of the mastery function so that it may apply to all skills except Soul
- Breaker. [Skotlex]
- * Changed name of the setting log_pick to log_filter since that's what it
- does now. [Skotlex]
- * Modified enable_logs so that instead of a 0/1 setting, you can specify
- which kind of events to log (so you can use a combination), see log_athena
- for the bitmask configuration. [Skotlex]
- * Cleaned a bit the contents of log_athena.conf
- * Hide/Chasewalk will again stop screaming skill name. [Skotlex]
- * Soul Breaker will no longer receive Mastery damage. [Skotlex]
- * Fixed warning:'type' might be used uninitialized in this function [Toms]
-2006/08/03
- * Added a check to skip the experience share of characters who are dead or
- on another map. [Skotlex]
- * Reverted the previous change, chasewalk has no icon, only the str-bonus
- has that fist icon now. [Skotlex]
- * Allowed chase-walk to display a skill animation when using it. [Skotlex]
- * Readjusted the Chasewalk icon to be as it should be. [Skotlex]
- * GS_DESPERADO is now a short-range attack skill. [Skotlex]
- * Changed the Battle-Orders icon to be the Strength Up icon (for
- Chasewalk's str bonus). [Skotlex]
- * Fixed using the right-hand weapon's size modifiers regardless of which
- weapon's damage was being calculated in regards to. [Skotlex]
- * Simplified the ignore-size check by making the Weapon Perfection check be
- done when specifying the flag, also moved the size-fix property of riding
- spear-knights to status_calc_pc. [Skotlex]
- * Changed SI_CHASEWALK value to 119 as concluded by LoneWolf [Skotlex]
- * Corrected clif.c sending the raw mdef2 value to the client instead of
- first substracting the "secret vit/2" bonus from it. [Skotlex]
- * Added a damage cap to CR_ACIDDEMONSTRATION of INT_MAX/2 to prevent
- overflows. It is not capped to INT_MAX because damage increasing skills
- would cause it to still overflow afterwards. [Skotlex]
- * Fixed NPC_CRITICALSLASH not being considered as a Critical hit by the
- code. [Skotlex]
- * Added RUDE_ATTACKED_COUNT so you can easily adjust how many rude-attacks
- should happen before a mob uses the rude-attacked skill. Value has been set
- to 2 for now. [Skotlex]
- * Now when a mob changes target (to someone they can hit) their
- rude-attacked count won't be reset, but instead will be reduced by one.
- [Skotlex]
- * SC_SPEEDUP0 can now stack with the other speed raising buffs. [Skotlex]
- * Some adjustments so that the last-skill-used will be correctly cleared
- when your combo-time ends. [Skotlex]
- * Fix a bug in atcommand_charspeed [Toms]
- * Fixed a logic error preventing from cooking anything [DracoRPG]
- * Cleaned up the last NJ update code. [Skotlex]
- * Added @ command `charspeed` [Skotlex]
- * Fixed @jailfor using MAP_PRONTERA as jail instead of MAP_JAIL [Skotlex]
- * Removed case for GS_SPREADATTACK on damage packets to see if the skill
- displays correctly now. [Skotlex]
- * Corrected Deluge/Volcano/V. Gale overlaps so that the placing tiles are
- removed, NOT the ones who were already placed. [Skotlex]
- * Made SC_SPEEDUP0 and SC_SPEEDUP1 use different icon IDs, to fix
- icon-confusion when both are enabled at a time. [Skotlex]
- * Mob rude-attacked count is not reset now on picking a new char (gotta
- investigate this further) [Skotlex]
- * Changed atoi to strtoul for guild-experience's field [Toms]
- * Fixed a bug in int_storage.c, temp array doesn't have the good size [Toms]
-2006/08/02
- * Modified yet again SC_SILENCE after iRO tests from Entwined on IRC.
- Silence now ONLY blocks skills from being used, it will not stop on-going
- casts. [Skotlex]
- * Updated status_cast_cancel to also include silence (so the cast bar is
- cancelled if you are silenced during it) [Skotlex]
- * Updated the way SC_SILENCE works. From what I remember (from previous
- forum discussions) it: 1- Always blocks skills from being used. 2- Will
- only block a skill when the cast-bar ends IF the skill is targetted. If
- anyone wants to debate to get this changed, make an appropiate forum topic
- in the svn development area to discuss. [Skotlex]
- * Added a check in the walking code when triggering skills.
- NPC_SELFDESTRUCTION will no longer cancel walking, it will instead resend
- the walk packet, this effectively causes the mob to start walking
- (clientside) while the cast-bar is showing. [Skotlex]
- * Fixed a logic error on battle_get_master which was causing infinite
- loops.. [Skotlex]
- * Fixed homunculus error message [Toms]
- * Rewrote pc_payzeny to not use doubles, it may more accurately prevent
- charging a player more zeny than they can withhold. [Skotlex]
- * Fixed failing to create Deadly Poison Bottles damaging 50% of your max
- life instead of 25% [Skotlex]
- * Added the missing status-change flags to SC_FREEZE to signal it should
- modify def and magic def [Skotlex]
- * Little add on NJ_HUUMA [Toms]
- * Merged Mpeg's work on Ninja skills [Toms]
- * Fixed Martyr's Reckoning having a cap damage of 32k. [Skotlex]
- * Now you can teleport in Thanatos Boss room, but you can't respawn there [Playtester]
- * Fixed Defender Raising Walk speed instead of diminishing it. [Skotlex]
- * Added a check on status-change load to prevent loading speed-affecting
- status when their speed adjustment is 0 (prevents division by zero)
- [Skotlex]
- * Code cleanup & optimization on guild part of char-server [Toms]
- * Fixed script code data not being free'd if a player quits in the middle
- of a script. [Skotlex]
- * Modified run_script so that when there are leaks, it will report the
- place where run_script was called from as source rather than the inner code
- of run_script (for debugging purposes) [Skotlex]
- * Made recursive master check the default (otherwise it messes skill -> pet
- -> player kind of herarchies) and cleaned up some the battle_get_master
- code to prevent infinite loops in the weird case someone specifies that
- their master is itself. [Skotlex]
- * Recoded the GuildAura code to use val3 & val4, allowing much greater stat
- bonuses (in case someone wants to get Guild Skill level 20 or something
- crazy like that) [Skotlex]
- * Updated battle_check_target so that all alchemist summoned mobs can be
- target by everyone. [Skotlex]
- * Cleaned up skill_check_condition_mob_master_sub, it will now count both
- total number of summoned mobs and amount that belong to the same type.
- [Skotlex]
- * Corrected AM_CANNIBALIZE so it will fail if you already have plants of
- another type out. [Skotlex]
- * Using NPC_SELFDESTRUCTION no longer will make the caster stop walking.
- [Skotlex]
- * Removed SI_GUILDAURA, and replaced it with SI_LANDENDOW, now
- Volcano/Deluge/V. Gale will get that funky icon instead. [Skotlex]
- * Changed clif_hominfo to receive both sd and hd as parameters
- * Some redundancy cleaning in mercenary.c [Skotlex]
- * Moved updating of sd->mercenary.hp from merc_damage to pc_makesavestatus.
- [Skotlex]
-2006/08/01
- * Miscellanous fixes which make the Marine Sphere self destruction work as
- best as I can. It only has one flaw: It self-destructs instantly after
- walking because if I make it use self-destruction with a cast-bar,
- client-side the object stops moving inmediately... [Skotlex]
- * Modified unit_walktoxy and NPC_RUN to enable running even when the caster
- does not has the MD_CANMOVE bit on. [Skotlex]
- * PF_MINDBREAKER will now silently fail if you try to use it on someone who
- already has the status active. [Skotlex]
- * Cleaned up yet again skill_landprotector, now new cells of
- Deluge/Volcano/V.Gale will delete previous cells when they are recasted on
- top of each other. [Skotlex]
- * Summoned Marine Spheres no longer get the MD_CANMOVE bit. [Skotlex]
- * Cleaned up some more the SC_JAILED code [Skotlex]
- * merged in atcommands jailfor, jailtime, charjailtime. Thanks to Meruru
- and Coltaro for the code. [Skotlex]
- * Cleaned the code of atcommands jail and unjail [Skotlex]
- * Be warned that the code MAY contain bugs as I adjusted it to save the
- character's position before jailing, allowing the automatic unjailing to
- warp you back to the exact spot you were at before being jailed. [Skotlex]
- * Should have fixed the cooking sets not displaying all cooking available
- items. [Skotlex]
- * Figured out and fixed the issue with Volcano/Deluge/Violent Gale not
- really working. Thanks to Mpeg for noting it out. [Skotlex]
- * Modified Self Destruction, so that Marine Spheres in non-versus maps will
- hurt only enemies, while in all other situations this skill will hurt
- everyone around them. [Skotlex]
- * Expanded setting debuff_on_logout so that &1 removes negative buffs and
- &2 removes positive buffs. [Skotlex]
- * Food status boosts will no longer end on death, but they will end when
- you respawn or logout. [Skotlex]
- * Added battle config file status.conf, moved some settings from skill.conf
- and battle.conf to it since they are entirely Status-Change related.
- [Skotlex]
- * Added the missing lines to enable script command "kickwaitingroomall"
- [Skotlex]
- * Magic Rod's can-act delay will no longer be applied when you absorb a
- spell. [Skotlex]
- * Fixed Don't Forget Me increasing speed instead of decreasing it. [Skotlex]
- * Modified setlabel so that the script engine barks when you are trying to
- use the same label name as a constant or variable name. [Skotlex]
-2006/07/31
- * Fixed the subnet 0 mask being reset to 0 when someone goes up on the fame
- rankings. [Skotlex]
- * Updated Poison React chance to counter and number of counters as per
- skill description updates. [Skotlex]
- * Fixed Sharpshooting being counted as a magic attack, and hence, using
- your MATK as base damage. [Skotlex]
- * Fixed NPC_STOP id value in skill_cast_db [Skotlex]
- * Bladestop will no longer stop when you push either of the characters
- around. [Skotlex]
- * Fixed Enchant Poison having a near 100% chance of poisoning target on
- attack. [Skotlex]
- * Little fix on duel [Toms]
- * Added possibility to restrict duel usage to same map [Toms]
- * Merged mpeg's fix on ninja skills [Toms]
- * Corrected a status_get_race call which should be status_get_race2 in misc
- attacks. [Skotlex]
- * Moved the Devotion code to the top of the SC list in status_damage,
- meaning that now stuff like being asleep or confused won't end if you are
- hit, but the damage is absorbed by devotion. [Skotlex]
- * Added the Soul Link of Rogue speed bonus to Chase-Walk. Since there's no
- information of how much the bonus should be, it currently is a conservative
- 10%. [Skotlex]
- * Fixed a possible crash in the main script engine when restoring previous
- script. [Skotlex]
- * Fixed sleep.tick not being set back to 0 before resuming execution, which
- leads to scripts that are continously executed even when they already ended
- (they do nothing but waste resources) [Skotlex]
- * Fixed a pair of free -> aFree used on stacks, which would lead to memory
- manager reporting leaks where there aren't. [Skotlex]
- * Removed incorrect "Waterball range+1 when standing on suiton" feature.
- [Skotlex]
- * Corrected the Speed update code to prevent sending "walk to xy" packets
- twice when the affected character is a player. [Skotlex]
- * Expanded mob can't move warning to print out where this mob was stuck at
- (map, x,y) [Skotlex]
- * Fixed segmentation fault in status_change_end, vd wasn't initialized [Toms]
-2006/07/30
- * NPC_INVISIBLE will now use Cloaking of a level +9 of the used skill
- level, so that at level 1 they can attack, use skills and receive no
- walking penalty. [Skotlex]
- * Mob casted Sanctuary will no longer always heal it's targets regardless
- of element/race [Skotlex]
- * Status change packets will now use as criteria for sending the actual
- view_class instead of player/not-player. This will fix status-changes
- displaying improperly on clones, and also possible crashes with disguised
- players. [Skotlex]
- * Merged mpeg's fix on ninja skills and SA_VOLCANO,SA_DELUGE,SA_VIOLENTGALE [Toms]
- * Added bNoMiscDamage setting so you can specify misc-damage blocking from
- skills. Modified battle_calc_damage so that even Pressure and similar
- skills will be affected by this setting. [Skotlex]
- * GS skill updates/fixes [Vicious]
- * Force all users offline in sql when char-server starts [Toms]
-2006/07/29
- * Removed ugly struct cast in login.c [Toms]
- * New version of buildin_query_sql which accept more than one column and
- can return the number of rows. See script_commands.txt for more details. [Toms]
- * Fixed nullpo in merc_hom_skillup [Toms]
- * Added a return value to buildin_rid2name if rid is invalid [Toms]
- * Made the SQL ping interval default to 7 hours. [Skotlex]
- * Made skill_unitsetting remove the group when no unit-cells were placed
- down. basicly this means that if landprotector blocks all tiles, the group
- will be removed from memory, preventing said group from counting to the
- total number of skills you can set. [Skotlex]
- * Fixed segmentation fault in script engine when calling something which is not a function [Toms]
- * Fixed segmentation fault in script engine when activating DEBUG_RUN flag [Toms]
-2006/07/28
- * Added Ishizu's code to check ammo type on attack. No more using Grenade
- rounds with Guns. [Skotlex]
- * offensive heal/sanctuary will only happen when the source of the heal is
- a player, mob/pet casted heal will now always heal regardless of target.
- [Skotlex]
- * Shield Chain will now ignore the 'ice-pick' defense piercing bonus.
- [Skotlex]
- * Self destruction will now hit all characters in range, not just enemies.
- [Skotlex]
- * Cleaned up the NJ update code: [Skotlex]
- - Restored code which was removed (stuff like SC_SKA)
- - Fixed possible crashes on some NJ skills if used by non-players.
- - Fixed most NJ magic spells doing more damage than they should.
- - Fixed ZenyNage being able to do more damage than zeny you have.
- - Cleaned up skill setting code for Suiton and Kaensin
- * Some cleaning of battle_drain, Evil Druid card should work now. [Skotlex]
- * Made status_damage allow damaging of objects not on a map, this should
- fix pet-catching making the mob never respawn again. [Skotlex]
- * Casted nothl to (unsigned int) in sprintf functions, IP is 32bits and sql field the same :) [Toms]
- * Fixed "warning: `list' might be used uninitialized in this function" in char/char.c@3032 [Toms]
- * Fixed "uninitialized local variable 'i' used" in skill.c and "warning: suggest explicit braces to avoid ambiguous `else'" in battle.c [Toms]
- * Fixed "warning: long unsigned int format, unsigned int arg" in parse_login (login_sql\login.c) [Toms]
- * Fixed sign warnings in login/login.c [Toms]
- * Fixed "conversion from 'double' to 'int', possible loss of data" [Toms]
- * Fixed "warning: redefinition of [ushort/uint/ulong]" [Toms]
- * Fixed duplicate case value on NJ_SUITON [Toms]
-2006/07/27
- * Fixed a memory leak when there exists more than one user function with
- the same name, added the appropiate warning when this happens. [Skotlex]
- * Added reporting source file when an npc shops item's price is
- exploitable. [Skotlex]
- * The picklog will now record negative values for items sold to npcs.
- [Skotlex]
- * Added inmediate position and hp-bar update when a character joins a
- party. [Skotlex]
- * Added missing SC information to NPC_CHANGEUNDEAD [Skotlex]
- * Added config setting party_update_interval so you can specify how often
- the party-mate minidots should be updated (defaults to 1 sec). [Skotlex]
- * Removed a bunch of broken comments in skill.c [Skotlex]
- * Synced the script.c file with as much data as possible from jA's:
- [Skotlex]
- - A lot of functions were moved around, a bunch of indentation and
- space-usage changes were done to make it easier to diff against their
- files.
- - Miscellanous addition and corrections were applied.
- - Largest one is likely a restructuring of run_script_main, which hopes to
- solve the memory leaks.
- - script engine now uses the setjmp functions to restore memory state when
- there's an error parsing scripts, which means that script errors won't
- cause the map-server to inmediately bail out anymore.
- - NOTE that the amount of changes is pretty extensive, so DON'T USE THIS on
- a live server. Update only to help test and debug to see if the script
- engine memory leaks are gone.
- * Added a cleanup routine on shutdown to remove all characters from memory
- for whom the save ack has not returned from the char-server yet. [Skotlex]
- * Now when you set the guardian's HP, if the guardian is spawned, it's HP
- will be updated accordingly (and if you set it to 0, the guardian is
- killed) [Skotlex]
- * Added functions status_set_hp/status_set_sp to set hp/sp to a given
- value. Applied usage of these on the Berserk and Soul Change code.
- [Skotlex]
- * Added config setting "party_hp_mode" (battle/party.conf) which determines
- method to use to update party-mate hp bars. Aegis style is to update HP
- bars whenever HP changes, while eAthena style is to update it together with
- the map party dots. Defaults to aegis style. [Skotlex]
- * Fixed packet 0x22a having the manner and opt3 packets in inverted
- offsets. [Skotlex]
- * Readded the check which prevents Cloaking from activating when your
- learned level is less than 3 and you aren't next to a wall. [Skotlex]
- * Some cleanups to the Frenzy/Berserk status change, it should probably
- work correctly now. [Skotlex]
- * Removed a redeclared variable i in the parsing of the fame list (char-sql
- server) which seems to be the cause of the random memory corruptions.
- [Skotlex]
- * Updated item_db.sql to latest. [Toms]
- * Fix homunc & code cleanup [Toms]
- - Timer problems on delete_timer
- - Intimacy problem (overflow & new values)
- - Homunc deleted if intimacy < 0
- - base exp is now given to master
- - Homunc sometimes not saved
-2006/07/26
- * Fixed a memory leak when reading the item_db txt. [Skotlex]
- * Applied the necessary changes to make @partyoption reflect it's changes
- on the alt+p window. [Skotlex]
- * Modified party_item_share_type config setting so that using 1 disables
- item-sharing from non-mob loot (player dropped items or pet loot) and 2
- enables round-robin instead of random sharing. Using 3 obviously is
- enabling both 1 and 2. [Skotlex]
- * Added battle_get_master which returns the master bl of a given object.
- [Skotlex]
- * Recoded battle_check_target to use battle_get_master, the src/target
- switch has been split into two, so that actual target and master target are
- seperately treated (same for source). [Skotlex]
- * Added support for "sc_end -1" which will clear all status changes. Added
- the constant SC_ALL so you can use in scripts "sc_end SC_ALL;" instead.
- [Skotlex]
- * @pettalk will now fail when muted. [Skotlex]
- * Enabled changing of equipment while stunned/asleep/petrified/etc [Skotlex]
-2006/07/25
- * Cleaned up run_script_main to properly free previous stack-data when
- running scripts. Note that scripts may still leak memory when run by
- non-players and they don't reach the "END" state, however I am not sure how
- this case should be handled, so it's left as it is for now. [Skotlex]
- * Added a missing ntohl call in the loginlog code. [Skotlex]
- * Added a check when buying from npcs to allow buying of item_avail items.
- [Skotlex]
- * Fixed duel accept invite sending the packet before the duel data is set
- (resulting in a packet that noone receives). Thanks to Toms for finding it
- out. [Skotlex]
- * Fixed a possible crash when you dual-wield and the total damage is 0.
- [Skotlex]
- * Added Toms's perl scripts item_db.pl and mob_db.pl (they are in tools/),
- they convert the txt databases into sql. [Skotlex]
- - Usage: "script" < "input file" > "output file". eg: ./tools/item_db.pl < db/item_db.txt > sql-files/item_db.sql
- * Updated the sql files since now it's quick [Skotlex]
-2006/07/24
- * Re-updated the mob_db.sql to latest. [Skotlex]
- * Cleaned up the skill_landprotector function to correctly block only magic
- skills from being placed on land protectors. [Skotlex]
- * Corrected itemdb_group so that it will not return the random item givers
- (should give priority to actual item groups, so that the item heal bonuses
- work correctly) [Skotlex]
- * Cleaned up the Mistress Card related code so that the no-gemstone bonus
- reduces item requirements by one rather than totally skip them. [Skotlex]
- * Cleaned up the logs "can log"function to use the IT constants. Also
- corrected the "only log large amounts" setting not working on negative
- values (trades). [Skotlex]
- * Adjusted skill_castfix_sc so that Suffragium will get consumed even on
- instant cast skills, but Memorize won't. [Skotlex]
- * BladeStop will now end when either of the characters is moved (knocked
- out?) around. [Skotlex]
- * Moved the Zeny penalty code from respawn to pc_dead. [Skotlex]
- * Added a check to prevent Deluge/Volcano/Violent Gale from being placed on
- top of each other. Reverted the previous 'fix' where atk was being
- increased based on armor element rather than element of attack. [Skotlex]
- * Removed the noreturn mapflag check from script command warp. [Skotlex]
- * Homuculus cleanup [DracoRPG]
- - Replaced nullpo's in parse functions by silent checks
- - Removed server-side effect for menu option 0 (view status window...
- why does the client send us the packet since we don't care? -_-)
- - Rewrote intimacy underflow checks so they are really effective (no
- need to check if an unsigned is < 0, it won't work... check before!)
- * fixed unban unblocking players as well. [Skotlex]
- * Fixed Volcano/Deluge/Violent Gale increasing damage based on element of
- attack instead of defense element of attacker. [Skotlex]
- * Cleaned up the code of Magic Rod, fixed it not giving SP. [Skotlex]
- * Moved the code of Hermod and Basilica to castend_pos2 so it should work
- now. [Skotlex]
- * Modified the code of Ankle Snare so the status ends on unit's time-limit
- rather than when the snared object moves away. [Skotlex]
- * Re-worded the water check of ST_WATER skills. [Skotlex]
- * Allowed sc-cast reductions to be processed even when cast-time is instant
- (to let suffragium end even on instant-cast skills) [Skotlex]
-2006/07/23
- * Modified setting skillrange_by_weapon (skill.conf) to be a
- per-object-type setting instead of yes/no. The default now is that
- weapon-based skills will take the attacker's range for non-players.
- [Skotlex]
- * Changed the default of skillrange_by_distance to include homunculus.
- [Skotlex]
- * Fixed buildin_isequip not working correctly with non-cards. [Skotlex]
-2006/07/22
- * Updated mob_db.sql to latest. [Skotlex]
- * Applied Toms's suggested corrections to homun code. [Skotlex]
- * Corrected Cannibalize/Marine Sphere ignoring the selected summon spot.
- [Skotlex]
- * Fixed looting pets ignoring the item pick-up priority of other players.
- [Skotlex]
- * Should have fixed a signess warning in login txt. [Skotlex]
-2006/07/21
- * Added blocking of @me when muted or in berserk status. [Skotlex]
- * Corrected the @follow timer not being deleted on logout. [Skotlex]
- * Applied the homunculus code fixes provided by Toms. [Skotlex]
- * battle_check_target will now tag homunculus as invalid target when the
- source is a skill-type object. [Skotlex]
- * Added a check on pc_equipitem so that when the client specifies to equip
- a weapon on the right hand when the left hand is available, the weapon will
- be sent to the left hand instead (when dual-wielding is possible,
- obviously). Same for the left/right accessories. [Skotlex]
- * Added the necessary checks so that Suiton makes Fogwall have double
- duration, and to make water-requiring skills to consume their cells.
- [Skotlex]
- * Corrected the loadmap event description to specify that the mapflag
- required is actually "loadevent", NOT "loadmap"! [Skotlex]
- * Now when the char-txt server does not finds a requested party, it will
- clear out said party id of all characters (will help prevent massive
- spamming/overhead when for some reason the party file needs to be deleted).
- [Skotlex]
- * Combo skills (inf = self, inf2 = no target self) no longer check range if
- you use them while your attack-timer is still active. [Skotlex]
- * Added back a map_freeblock call in skill_delunitgroup which caused a
- memory leak when removed... [Skotlex]
- * Added a check to prevent Blind from ending while standing on a fog of
- wall. [Skotlex]
- * The mob Slave ai will be executed now even when the slave has a target.
- This will allow for "instant" warping to the master when it changes maps or
- teleports. if the slave has a target already, it won't unlock it and chase
- back to the master or anything like that. [Skotlex]
- * Removed a couple of checks that prevents item ids above 20000. However,
- remember that the max id is still ~32k or the client is the one who's gonna
- crash! [Skotlex]
-2006/07/20
- * Added source reporting when you do an invalid int&str or str&int
- operation on a script. [Skotlex]
- * Fixed the intif party creation packet having the incorrect size sent,
- hence causing the leader's level to be read as garbage (which caused the
- "impossible to even share" bug). [Skotlex]
- * Added pc_check_weapontype to do a proper skill weapon check that takes
- into account dual-wielding. That is, if a skill can be used with
- daggers/axes, you'll be able to use the skill when dual-wielding them.
- [Skotlex]
- * Corrected Cloaking level 1-2 not letting you move across walls. [Skotlex]
- * updated cloaking code so that when you set "enable cloaking without
- walls", the code will consider you as "always next to a wall", thus you get
- the wall-speed bonus always. [Skotlex]
- * Applied the fix to homunculus name saving... [Skotlex]
- * Added battle config settings agi_penalty_target and vit_penalty_target,
- they define which object types will get vit/flee reductions when
- multi-targetted and defaults to only players (battle/battle.conf) [Skotlex]
- * Added the dummy intravision case for the changeoption packet 0x229
- [Skotlex]
- * Corrected Fog of Wall so that all targetted offensive skills (not only
- those who do damage) will fail on cast-end 75% of the time. [Skotlex]
- * corrected @homlevel up and one entry in the homun exp table as reported
- on the forums by Albator. [Skotlex]
- * Added the SQL fix to Homunculus skill learning/saving bug [DracoRPG]
- * Added a status_check_skilluse on skill_attack_area call to prevent splash
- damage skills from hitting hidden/trickdead/etc characters. [Skotlex]
- * Corrected fog of wall to behave as best known currently: [Skotlex]
- - Only takes effect when targetting a character inside it
- - -50hit/-75% damage when using normal-ranged attacks
- - -25% damage from all damage skills
- - 75% chance of all targetted damage skills of failing.
- * Should have fixed @refine applying multiple times to equipment that uses
- multiple equip slots. [Skotlex]
-2006/07/19
- * Fixed the inf code update breakage which was blocking all offensive
- skills. [Skotlex]
- * Added battle setting homun_critical_rate (defaults to 0) [Skotlex]
- * Removed enemy_str/pet_str/enemy_perfect_flee and replaced them with
- enable_perfect_flee which specifies which objects can have perfect flee and
- enable_baseatk which specifies which objects can have a base attack value
- (both in battle.conf) [Skotlex]
- * Modified the targetted skill logic to enable offensive skills to be
- targetted at party/guild members if the appropiate inf2 value is set.
- [Skotlex]
- * Added checks to make adding items to inventory/cart fail when a char is
- in finalsave state. [Skotlex]
- * Fixed parse_names on irc.c crashing when receiving a null argument.
- [Skotlex]
- * Modified the parsing of the names line, since some servers will send @
- instead of = when separating the information. [Skotlex]
- * Fixed the homun creation sql statement. Why noone else did so before?
- [Skotlex]
- * When enabling/disabling hiding/unhiding an npc, if the npc is a warp, it
- will use clearchar and spawn packets instead of changeoption. Thanks to
- Toms for the fix. [Skotlex]
- * Corrected Trim chars to block 'enter', as explained by the Ultra mage.
- [Skotlex]
- * When the client passes account version 0, the login server will set it to
- 1 now. [Skotlex]
- * Corrected the HP bar scaling when HP is above Short Max. It should
- display fine for any HP value now. [Skotlex]
- * Added a check when the mob's adelay is shorter than the amotion, in which
- case the adelay will be changed to the amotion value. [Skotlex]
- * Some minor mapflag changes. [MasterOfMuppets]
-2006/07/18
- * Added atcommand @partyoption, lets you alter the party item-distribution
- type on the go. Usage is "@partyoption <pickup share> <item distribution>",
- where both arguments can be 0/1, yes/no, etc. [Skotlex]
- * Updated @changeleader and @partyoption to use msg_Athena entries.
- [Skotlex]
- * Added character 013 (enter) to the list of characters that are always
- removed from new character names. [Skotlex]
- * Fixed a crash when trying to extend TK's infinite combo feature. [Skotlex]
- * Corrected Poison React to counter regardless of distance, and to use the
- skill's 50+5*lv% counter chance (instead of 100%). [Skotlex]
- * Corrected Venom splasher's splash damage [Skotlex]
- * You now can't move/attack/use-skills when using Cloaking of a level less
- than 3 [Skotlex]
- * Fixed compilation of mercenary.c [Skotlex]
- * Corrected Fog of Wall's "targetted spells fail 75% of the time" feature
- by making it behave like GTB, that is, you just get a skill-failed on
- cast-end, no skill-animation at all. [Skotlex]
- * Added a proper check to make aggressive mobs never override homun targets
- regardless of distance. [Skotlex]
- * Removed a bunch of homun-related variables that are not needed at all.
- The alive condition is removed, now the code checks for the hp value to
- know if the homun is alive or not. [Skotlex]
- * Cleaned up a bit the skill-id function, homun skill checks (such as delay
- and skill-lv learned) should be correct now. [Skotlex]
- * Added a proper check to make aggressive mobs never override homun targets
- regardless of distance. [Skotlex]
- * Fixed giving the 100% damage bonus when no-splash-targets are found in
- the blown path to Grandcross instead of Bowling Bash. Bowling Bash damage
- equation becomes then +50*lv% rather than +40*lv% when there's no
- splash-damage (the 50*lv% figure is custom, all we know is that level 10
- does 600% instead of 500% damage). [Skotlex]
-2006/07/17
- * Updated mob_db.sql to current mob_db.txt data. [Skotlex]
- * The char-server will allow off-line character saves when said char is
- tagged for final-save (this is the scenario when the char-map reconnect).
- [Skotlex]
- * Should have fixed the Cart Termination damage code to be scaled correctly
- when you change the max cart weight. Thanks to The Ultra Mage for the error
- clarification. [Skotlex]
- * Implemented Grandcross weird property where if there's noone on the path
- it'll hit twice for the skill's reported damage, and when there is (or you
- can't knockback the target) it'll do a splash attack that hits twice for
- 500% to all affected targets. [Skotlex]
- * Some cleaning of the combo code. TK Rankers will now get their combo-time
- extended each time they trigger a kick, enabling them to do "unlimited
- combos". [Skotlex]
- * Modified the autosave function to use a sweep across the player db
- instead of across connected clients. This will cause non-connected players
- (like autotraders) to also be saved on a regular interval, may help with
- possible data-loss from said characters on unclean shutdowns. [Skotlex]
- * Removed the code that forces aggressive mobs to go after a Homun instead
- of their master (no reason why there should be such a condition). [Skotlex]
- * Some sign quest map flag updates [MasterOfMuppets]
- * atcommand_follow is now more verbose. [Adam]
- * Manually added int_homun.c to the VS8 char_sql project, *should* work [DracoRPG]
- * Orn's fix to the very critical skill level up bug [DracoRPG]
- * Updated mob_db.sql to current mob_db.txt data. [Skotlex]
- * Added Orn's lil fix on homun [Vicious]
- * Added Homunculus system, enjoy! [orn aka Nylou]
- - WARNING: This currently only works with the SQL version, as the TXT char-server
- has no code for it at the moment. You TXT server won't break, but the char-server
- will complain of an unknown packet if you try to get an Homunculus
- * Updated nomemo mapflags based on info from http://ro.doddlercon.com/images/memo.jpg [Poki#3]
-
-2006/07/15
- * Small change in conf/battle/player.conf to say that 199 is max aspd allowed
- (Haplo says that there are many reports of having over 200 is giving errors) [Evera]
-2006/07/13
- * Kaahi no longer shows the heal effect to everyone. [Skotlex]
- * Eska no will cause defense to change randomly every second. [Skotlex]
- * Tuned up some more NJ_KAENSIN based on Tharis's information. [Skotlex]
- * Corrected NJ_KAENSIN as per description. [Skotlex]
- * Fixed a leaking map_freeblocklock on skill_del_unitgroup. [Skotlex]
- * Changed the default save interval to 5 minutes. Added support for
- specifying fixed save-intervals by using negative values. [Skotlex] EG:
- - Save interval set to 300 (5 minutes): all characters will be saved in
- equal time-slots, so that everyone is saved every 5 minutes regardless of
- number of players online.
- - Save interval set to -1000 (1000 ms): One character will be saved every
- second, regardless of amount of characters online.
- The new fixed-time-slots method is meant for larger servers, so that they
- can control the saving-induced stressed on the char-server.
- * Fixed @storeall and @charstoreall failing when the target character
- already had the storage open. [Skotlex]
- * Reverted temporarily the Cart Termination equation until it can be
- fixed... [Skotlex]
- * Fixed script command "recovery". [Skotlex]
-2006/07/12
- * Fixed a small typo in my code [Zido]
- * Added negative value in bonus exploit fix for more stat bonuses [Zido]
- * Fixed exploit in pc_bonus there are no checks that check that the value being
- added onto a status don't make it go below zero, which means if you have a mineral
- card and reset stats it reduces your base attack to lower than zero, making it
- go up to 64000. Fixed by adding a check for SP_BASE_ATK, although i recommend
- doing it for other status bonuses also [Zido]
- * Recoded NJ_BAKUENRYU to behave as I understand it best from the
- skill-description (since Haplo told me this skill doesn't really has video
- information or anything...) [Skotlex]
- * Fixed NJ_TATAMIGAESHI to use ground-tiles rather than "for each in path"
- calls. The skill should be working correctly now, except for the fact that
- the correct "unit id" is missing (this is what would give the ground tile
- it's correct display). Temporarily it is using 0xba until the correct value
- is found. [Skotlex]
- * Added back the undead check to turn undead/resurrection to prevent
- damaging non-undead targets, removed it from the battle damage section.
- [Skotlex]
- * Resurrection will now silently fail when used on non-undead + not-dead
- characters. [Skotlex]
- * Poem of bragi/magic String's base delay reduction at level 10 (or above)
- is now 50% instead of 3*lv%. [Skotlex]
- * status_damage will no longer fail when the target is not on a map AND the
- flag is 2 (charge rather than damage). Fixes SP-draining status changes
- ending suddenly when in-between maps. [Skotlex]
- * Fixed the IP value being apparently incorrectly casted before inserting
- into the loginlog table on "connect success" events. [Skotlex]
- * Fixed Cart Termination's damage. [Skotlex]
- * Added the missing check to remove character from memory when logging out
- and using the charsave_method which saves character map-server-side.
- [Skotlex]
-2006/07/11
- * Fixed inverted check which was preventing you from buying more than 1
- from any stackable item.... [Skotlex]
- * Should have fixed the crash in intif gm message... [Skotlex]
- * Fixed GTB card only working while you had a status-change active.
- [Skotlex]
- * Fixed being unable to compound cards in armor. [Skotlex]
- * Made @monsterignore be an universal ignore. Means you cannot be targetted
- as an enemy by anything. Also added alias "@battleignore" which does the
- same as monsterignore. [Skotlex]
- * Fixed magic power setting your min matk as max-matk. [Skotlex]
- * Modified the packets involved in @fakename in hopes it'll refresh
- correctly on nearby clients now. [Skotlex]
- * Fixed clif_parse not checking for func_parse before sending data to the
- connected clients. This in turn required various code-rewrites in: [Skotlex]
- - duel related messaging functions (added clif targets DUEL/DUEL_WOS).
- - intif whisper to gm function
- - day/night timers
- - Rewrote the parse_console function to stop allocating/deallocating memory
- on every call.
- - Modified chrif_charselectreq to receive the player's ip among the data.
- * Added function clif_disp_message, which is the same as
- clif_disp_onlyself, except you can specify the targets (it sends a
- guild-chat packet) [Skotlex]
- * Fixed the subele bonus (elemental reduction) being applied to the element
- of the attacker instead of the element of the attack. [Skotlex]
- * mob skills now won't trigger on unit_stopwalking calls. [Skotlex]
- * Coded @reset. [Skotlex]
- * Reenabled @changesex [Skotlex]
- * Added function pet_create_egg which handles creating pet eggs correctly
- (when passed item id is indeed a valid petegg). Applied this on @createitem
- and getitem. [Skotlex]
- * Cleaned up code of @item [Skotlex]
- * Cleaned up the itemdb_isequip functions. itemdb_isequip will now return
- if the item is equipable by players, itemdb_isstackable returns if the item
- can be stacked, and itemdb_isidentified returns if the item should drop
- identified. [Skotlex]
- * Added defines CARD0_PET/CARD0_FORGE/CARD0_CREATED to identify if a given
- item has "invalid" cards, added define function itemdb_isspecial to
- simplify this check. [Skotlex]
- * Removed itemdb.c considering item ids above 20000 as invalid. [Skotlex]
- * Cleaned up script commands getitem and card-counting related ones.
- [Skotlex]
- * Cleaned up a bit more pc_isequip [Skotlex]
- * Added script function warpportal(x,y,targetmap$,targetx,targety).
- This creates warp portals as in the skill unit as a volatile alternative
- to static warp portals. [blackhole89]
- * Modified the login-sql server to do the ip-ban check only on the
- auth-packets instead of on every packet. [Skotlex]
-2006/07/10
- * Corrected Warp Portal being unable to warp people who are standing on it
- on the moment it triggers. [Skotlex]
- * Fixed @follow stopping the moment you are warped. [Skotlex]
- * Fixed pc_additem messing with the equip field of the passed item data.
- Fixes the famous "equip stuff on your arrow slot" bug. [Skotlex]
- * Fixed cart-termination crashing the server if you used level 16 of it.
- [Skotlex]
- * Fixed check_connect_login_server check in char-sql server. Fixes
- char-server not reconnecting to the login server. [Skotlex]
- * Login-sql server will no longer change an account's state to "7" when
- banning a player. This should fix being able to use @ban to clear out a
- @blocked player. Players will now be identified as banned only through the
- banned-until timestamp. [Skotlex]
- * Fixed a crash when using Gospel... [Skotlex]
- * The on-place function won't be invoked on setting ground skills if the
- group's tick is greater than the current tick. As Buuyo pointed out, this
- should fix Sanctuary and Gospel taking effect inmediately instead of after
- "x" amount of ms as they should. [Skotlex]
- * Added login-char packet 0x2737. Sets all characters offline (login-server
- side). [Skotlex]
- * Cleaned up char server "set all offline" implementation to remove only
- characters from the map-server from which the packet was invoked. It will
- also now correctly kick/set-character offline from the map-server if they
- are connected. [Skotlex]
- * Cleaned up the char-sql reconnect code. It no longer sets everyone to
- offline. [Skotlex]
- * Removed setting "kick_on_disconnect", servers will no longer kick
- characters out when there's a disconnection. Instead, it'll use the most
- logical approach: Set characters into a "lost" state when there's a
- disconnection, on reconnect, resent the list of online-characters, do a
- sync, and let the difference be characters to be removed. Also, the
- map-server won't release character data until it's saved and the ack
- returns from the char-server to prevent data loss (all this data is resent
- on reconnect for saving anyway). [Skotlex]
- * Added a check in pc_equipitem so that when switching weapons and you have
- the skill_range_by_weapon setting active, the skill info block (which
- includes range) will be resent when the new weapon to equip has a range
- different than the previous one. [Skotlex]
- * One closer inspection, removed that clear in itemdb_reload for a foreach
- call again. And modified itemdb_load to scrap the dummy item entry from the
- item_db and replace it with proper data for the item. [Skotlex]
- * itemdb_reload will clear the itemdb before reloading info instead of only
- clearing the scripts now. [Skotlex]
- * Some cleaning of skill_castend_pos2, fixed Gospel, and a
- map_freeblock_unlock misplacement. [Skotlex]
- * Sense/Estimation will now display the mob info window to all party
- members in the same map. [Skotlex]
-2006/07/08
- * Fixed the new addeff structure not working well with SC_STONE (because
- SC_STONE is 0, which was by default not handled as a valid value).
- [Skotlex]
- * Added back the TF_MISS walking speed bonus to assassin type classes (how
- did that got lost?) [Skotlex]
- * Fixed mobinfo displaying exp as signed ints rather than unsigned.
- [Skotlex]
- * Added status_check_visibility to check if an object is within range of
- view of another. Nothing more, nothing less. It's used by unit movement to
- check whether you can continue chasing your target or not when the "chase
- target" directive is given. [Skotlex]
- * Fixed the char table having party/guild_id as smallint when they need int
- there. Thanks to hermematon for pointing it out (use svn_ugprade7580.sql)
- [Skotlex]
- * Applied k3dt fixes to pet-hatching, ice-wall check, and wedding skills.
- [Skotlex]
- * Fixed endow skills calling the skill no damage packet twice. [Skotlex]
- * Fixed a crash on warpwaitingpc when the chat-room is empty. [Skotlex]
-2006/07/07
- * Fixed the Warm Skills [Skotlex]
- * Removed the debug message when a player logs out and is removed from
- memory, it is working fine (tested normal logging off and autotrade). [Skotlex]
- * Corrected the pet-armor field of the pet not being updated on
- equip/unequip of accessories, making them not show up inmediately. [Skotlex]
- * Status_calc_bl will no longer stop you from attacking/walking when the
- mode is changed unless the new mode no longer includes
- "can-attack"/"can-move" respectively. [Skotlex]
- * Should have fixed clif_item_sub to properly store pet egg/armor data.
- There should be no more "random refine levels" bugs related to these.
- [Skotlex]
- * itemdb_exists will now return NULL for item_id 0. [Skotlex]
- * Added a check to free a character from memory when changing map servers.
- [Skotlex]
- * Okay, added a chrif_save_ack packet to the char-server so now the map
- server will know once a character was "final saved", and only then the
- character will be removed from memory. On char-server reconnection, all
- chars that are in final-save state are resent to save (if they are still in
- memory, it's because the ack hasn't gotten here from the char-server). This
- should effectively block all dupe problems due to heavy inter-server lag,
- however as it's untested, it currently prints some debug messages when
- people are saved and then removed from memory. Need testers so this can be
- debugged and merged to stable! [Skotlex]
- * Now, when the login-char connection is cut, the char-server won't set
- everyone offline on reconnect, instead it will send the list of online
- accounts to the login server. [Skotlex]
- * Modified the error on the char-sql server to set chars online when it
- receives a save packet from a character tagged as offline (until it can be
- figured out why this is happening) [Skotlex]
- * Fixed signed/unsigned comparison issues in the char txt/sql server.
- [Skotlex]
- * Fixed the cooking success chances. Thanks to Ishizu Chan. [Skotlex]
- * Added a temporary band-aid to prevent executing the script of non-arrows
- when they are equipped on the arrow-slot (until the actual cause of why
- pc_unequipitem is not working correctly is discovered/fixed) [Skotlex]
-2006/07/06
- * Modified the party_data structure on the map server to remove some
- redundant data. Added a party_data structure on the char-server to hold a
- more complete set of information about parties. Added to the party_member
- structure the class of each member so that the map server can do the
- appropiate checks even if the character is on another mapserver/offline.
- Due to the format changes in the party structure, txt servers will have to
- wipe their party file... (sql save format has not been changed) [Skotlex]
- * Added function char_family to check if there's a family state given the
- three character ids, instead of doing individual checks all the time.
- [Skotlex]
- * Rewrote all the item restriction functions so that they will take into
- account slotted card restrictions as well. [Skotlex]
- * Added no_skill_delay setting, when set, affected object types will have
- the minimum skill delay for all skills. Defaults to mobs, since they
- don't have skill delays. [Skotlex]
- * Cleaned up pc_equipitem. When dual wielding or equipping accessories, if
- the client actually specifies one of the two positions, it will be taken
- into account (now, does the client actually does this?) [Skotlex]
- * Fixed GrandCross and similar skills. [Skotlex]
- * FogWall will now also affect the caster. [Skotlex]
-2006/07/05
- * Updated NJ_KAENSIN by Saycyber21 [Vicious]
- * Updated @refine to take account of MAX_REFINE, thanks to Omega... GM
- Designer. [Skotlex]
- - Also optimized the @refine loop for better performance.
-2006/07/04
- * Fixed compile issue for NJ_BAKUENRYU, by Saycyber21. [Vicious]
- * Implemented Saycyber21's some NJ work. Untested. :D [Vicious]
- * Implemented cooking chances. Chance of success is 70% - 7*(dish-lv)% +
- 12*(cooking set-lv)%. Exception: When using the legendary cooking set,
- success chance is 100% regardless of dish. [Skotlex]
- * Added battle config setting emergency_recall, specifies behaviour of that
- skill (skill.conf): 0 - Disabled. 1 - can't be used in nowarpto maps. 2 -
- Can be used everywhere. [Skotlex]
- * Removed the NPC/Dance/Song inf2 check of AbraCadabra. whether a skill can
- come out or not is entirely decided by the abra db file now. [Skotlex]
- * Added structure s_addeffect to handle status change additions. Cleaned up
- relevant code. It is now possible to specify ANY status change, not just
- the basic ones. NOTE that the code is proof-read, but untested! [Skotlex]
- * Added support for bonus3 bAddEff/bAddEffWhenHit as follows: [Skotlex]
- bonus3 bAddEff/bAddEffWhenHit, <SC value>, <rate>, <target flag>.
- Target flag is 0: Self. 1: Enemy. 2: Both.
- * Added these descriptions to doc/item_bonus.txt [Skotlex]
- * Added a check when joining a chat to make sure the target object is of
- type BL_CHAT. [Skotlex]
-2006/07/03
- * Cleared up the bAutoSpellWhenHit description in doc/item_bonus.txt
- [Skotelx]
- * Fixed Phantasmic Arrow and Magical Bullet not being correctly tagged as a
- ranged arrow-type attack. [Skotlex]
- * Updated help.txt and help2.txt, thanks to Inuyasha for providing the
- updated files. [Skotlex]
- * Char-server SQL won't perform the reconnect cleanup routines when
- kick_on_disconnect is disabled. [Skotlex]
- * Renamed summons_inherit_effects to summons_trigger_autospells as the
- setting now only makes the attacks of the slaves trigger the autospells of
- the master (as it should be). [Skotlex]
- * Corrected code capping no_spawn_on_player to 50 when the max should be
- 100. [Skotlex]
- * Warmth will dispel when warping now (or else the effect is left on the
- ground) [Skotlex]
- * Fixed reading of the refine_db not working right when MAX_REFINE is
- increased from 10. [Skotlex]
- * Some more cleaning to the implementation of Abracadabra [Skotlex]
- * Fixed a compile warning in login sql/txt [Skotlex]
- * Fixed pc_makesavestatus not setting your logout position. [Skotlex]
- * Fixed two dances becoming BA_DISSONANCE instead of DC_UGLYDANCE.
- [Skotlex]
- * Added the missing +100% damage modifier of Enchant Deadly Poison.
- [Skotlex]
- * Fixed SkillStatusChangeTable not working correctly for Homun/Guild
- skills. [Skotlex]
-2006/06/30
- * Fixed a typo in msg_athena.conf, "This item cannot be drop" -> "This item cannot be dropped" [MasterOfMuppets]
- * Added a check to prevent equipped items from being traded. [Skotlex]
- * Added UF_SONG (0x400) to differentiate songs from dances. [Skotlex]
- * Added preliminar support for making a Song+Dance turn into BA_DISSONANCE
- cells. Beware of potential bugs as it's untested. [Skotlex]
- * Added mapflag "nochat" to prevent chatting rooms from being created.
- [Skotlex]
- * Corrected some of the sleep checks when the char id does not matches with
- the char-id expected by the script engine. [Skotlex]
- * Cleanup in itemheal related code, fixed the item heal group bonus not
- working on Groups beyond 7. [Skotlex]
- * Fixed pet's loot not being moved to your inventory on logout. [Skotlex]
-2006/06/29
- * Made the map server send list of characters online to the char-server on
- reconnection regardless of "kick_on_disconnect" setting, as otherwise, a
- temporary disconnection would make the char-server tag all characters
- offline and refuse to save them afterwards. [Skotlex]
- * Fixed guild storage being "eternally in use" if you quit/logout before
- closing it. [Skotlex]
- * Ending SC_CLOAK/SC_HIDE/SC_CHASEWALK will now trigger ontouch npcs.
- [Skotlex]
- * [Fixed]
- - Scripting system screwing up script position after mixing timers with menus.
- - NPC attached AI mobs display as alive when dead.
- - View data not updating after buildin_unitdeadsit.
- [Improved]
- - NPCE_LOADMAP to execute after all (area) objects are sent to the player.
- - Simplified scripting system. sd will now use pointer to the script state itself.
- [Lance]
-
-2006/06/28
- * changed:
- dynamic_pass_failure_ban_how_many:from 3 to 7
- dynamic_pass_failure_ban_how_long:from 60 to 5
- as in official servers. [Musashiden]
- * Added a check in script command "set_option" so that invoking
- "set_option(0)" removes Cart/Peco/Falcon, as expected by scripts. [Skotlex]
- * Added trade-range check on trade start. [Skotlex]
- * Added inf2 4096 (INF2_ALLOW_ENEMY) which is to be used in conjunction
- with INF2_PARTY_ONLY/INF2_GUILD_ONLY when said skill should ALSO be allowed
- to be used on enemies. [Skotlex]
- * Cleaned up a bit the code for @item [Skotlex]
- * Fixed character/storage being sent to be saved TWICE when you logged out
- while the storage is opened. [Skotlex]
- * Added save_settings map config. Specifies after which events do
- characters get saved (defaults to all): 1 - Trade successful, 2 - Vending
- transaction, 4 - Closing storage/guild storage, 8 - hatching a pet.
- [Skotlex]
- * Changed the mob drop rate adjust function to receive a signed int
- argument. Probably will fix those drops with 0% becoming 100% [Skotlex]
- * Corrected Musical Strike having a different damage equation from Throw
- Arrow. [Skotlex]
- * Added state rewarp to players. It gets set when a pc_setpos call is
- triggered while the player is changing maps so that when the player finish
- loading the map, it is inmediately rewarped to where it has been
- rewarped/recalled to. [Skotlex]
-2006/06/27
- * Map server will now resent the whole list of online characters to
- char-server on reconnect when the kick_on_disconnect setting is active.
- [Skotlex]
- * Cleaned up and optimized the IP sync code. New login_athena config
- setting sync_ip_interval specifies how often to sync the ip. The default is
- 0 (disabled). [Skotlex]
- * Added mapflag "loadevent", now load-map script events will ONLY trigger
- on maps with this mapflag on, rather than every map. [Skotlex]
- * High Jump can now be used in all versus maps. [Skotlex]
- * Added Kaite's opt3 value, taken from jA [Skotlex]
- * Added state dirty == 2 to storages. Signals when a storage was sent for
- final saving. Said storage is removed from memory after the ack from the
- char-server, and they are sent to save if the map/char servers reconnect
- before the ack arrives. In short: they are guaranteed to be saved after a
- char logs out. [Skotlex]
- * Put pay_arche.gat in the "no experience lost" mapflag file. [MasterOfMuppets]
-2006/06/26
- * Corrected the element of hunter traps. [Skotlex]
- * Deadly Poison now also reduces def2 by 25% [Skotlex]
- * Cleaned up a bit skill_moonlit, Moonlit Petals should work correctly now.
- [Skotlex]
- * Fixed @mi displaying always 0 instead of the mob's class. [Skotlex]
- * Rough implementation of Ground Drift according to description and jA
- info. [Skotlex]
- * Implemented Tatami Gaeshi using skill description and jA implementation
- for reference. [Skotlex]
- * Merged Mitternacht's max_heal/max_heal_lv config settings. [Skotlex]
- * Removed support of packet 0xc3 on the new packet versions. Thanks to
- Meruru for pointing out they aren't being used anymore. [Skotlex]
- * Autospells will now again check for the skill's nk value, so that skills
- tagged "nodamage" skills will not trigger autospells. [Skotlex]
- * Corrected clif_item_sub so that pet eggs will correctly be sent as
- equipment (fixes them showing up "broken" and with random refine levels)
- [Skotlex]
- * [Added]:
- - buildin_unitkill just for kicks. [Lance]
-
-2006/06/23
- * [Optimized]:
- - Setting of variables with defined scope in some frequently executed script
- events.
- [Added]:
- - Missing script_require_trigger flags for some power hungry events.
- * Updated mob_db.sql and item_db.sql to latest. [Skotlex]
- * Modified pc_setoption so that it will correctly update sprite AND clothes
- color when mounting/unmounting changing into/from xmas/wedding sprites.
- [Skotlex]
- * Allowed itemdb_exists to return the dummy item. Enables "invalid" items
- to be sold, traded, dropped, etc. [Skotlex]
- * Corrected ASC_BREAKER. Int-based damage is applied after attribute fixes
- and before card reductions. The skill now completely disregards left
- hand weapon. [Skotlex]
- * Standarized PF_MEMORIZE to be 50% cast time on all skills (instead of
- -50% for targetted skills and -66% for ground skills >.>) [Skotlex]
- * Cleared up the comment on what item_check does and how it works.
- [Skotlex]
- * Changed setting for skill_nocast flag 16. It is no longer a "pk-mode map"
- setting, it's now a clone-forbidden skill. That is, skills with the flag 16
- will never be copied by clones. If you use a PK-mode server, use flag 2 now
- to forbid skills from common maps. [Skotlex]
- * Default skills from not being cloned are Magnus Exorcism and Turn Undead.
- * The map search free cell will now use the size of the map # of tries
- before giving up when the spawn area is the whole map. Added a check to
- inmediately give up when the number of spawn retries has reached the max
- specified (no_spawn_onplayer = 100). [Skotlex]
- * Cleaned up a bit the clone code to account for the unit flags
- UF_NOPC/UF_NOMOB when the skill is not ground-based (accounts for self
- skill that causes a ground-tile to be placed, like Dances). [Skotlex]
- * Added pc_bonus_autospell_del, gives support for removing autospell
- effects. When a negative rate is specified, it will decrease the chance of
- casting (eg: You have two different cards with autospell Heal +20% each,
- then do autospell -30. The second card will be cancelled, and the first one
- will become Heal +10%) [Skotlex]
- * npc_timers now will not restore the previous timer data when there's no
- players attached (when it's strictly an npc timer). This should reenable
- the old behaviour of getnpctimer returning the total ellapsed time since
- "startnpctimer" even after the last label has been reached. However, this
- behaviour won't apply to player-attached timers. [Skotlex]
- * [Fixed]:
- - MAPREGSQL overloading SQL table with temperory map registries.
- - Incorrect perfomance calculation for MAPREGSQL loading and saving. [Lance]
-
-2006/06/22
- * Guessed and added support for the packets 0x22a (idle) and 0x22b (spawn).
- This should complete the required packets for PACKETVER 7. [Skotlex]
- * Added support for the PACKETVER 7 packets in the "dummy" current
- intravision implementation. [Skotlex]
- * Fixed @autoloot being off by 0.01% when entering a manual value.
- [Skotlex]
- * Restored the "Secret" behaviour of Blast Mine and Claymore Trap where
- each target is hit N times (where N is the number of mobs in the splash
- area at the moment of triggering). [Skotlex]
- * Updated the tools/stackdump script to also handle sig-plugin generated
- backtraces. Now it will also auto-determine whether the exe needs a .exe at
- the end or not. Help me test it as I want this script on stable NOW :X
- [Skotlex]
- * Usage is "stackdump <login/char/map> <txt/sql> [number]". When a number
- is given, sig-plugin stackdumps are assumed, otherwise it parses the normal
- stackdump as before. [Skotlex]
- * Corrected autoloot so that you can specify rate with decimal precision
- ("@autoloot 0.01" should work) [Skotlex]
-2006/06/21
- * [Removed]:
- - Redundant mob name copying. (it's already copied in mob_parse_dataset) [Lance]
- * [Fixed]:
- - Compilation warnings and errors.
- [Improved]:
- - Changed and moved IP sync status messages to elaborate more. [Lance]
- * Tested and fixed resolve_hostbyname. Applied said function around most of
- the code where needed. Removed includes for the OS/network system pretty
- much from every file (our socket.c file should handle this) [Skotlex]
- * Made the GM mute request bypass the manner_system setting. [Skotlex]
- * Applied use of parse_hostbyname() in chrif.c to fix compilation errors.
- [Skotlex]
- * status_percent_change will now account for when the target's max hp/sp is
- above INT_MAX. [Skotlex]
- * [Added]:
- - DNS (WAN) sync for those pesky disconnections (dynamic ip renewal). [Lance]
-2006/06/20
- * Some cleaning up of OPTION related code. OPTION_XMAS and OPTION_FLYING
- really ARE the same value clientside! (totally stupid), therefore I've
- opted from removing the flying animation since it really just displays as
- Xmas for others (and the correct fix involves adding a bunch of
- class-change packets...) [Skotlex]
- * Updated skill_require_db to place the Zeny requirements of ZenyNage and
- Fling. [Skotlex]
- * Fixed crash when non-players use ZenyNage. Added the correct Zeny check
- in skill_check_condition, fixed the skill so that it's damage is based on
- whatever zeny is specified in skill_require_db. [Skotlex]
- * Can-act delay will not be reset when warping now. [Skotlex]
- * Fixed Quagmire not altering walking-speed. [Skotlex]
- * Silence now blocks skills both on begin/end casting. [Skotlex]
- * Updated status_calc_bl so that when walking speed changes, the character
- is made to rewalk so that the new speed takes effect inmediately. [Skotlex]
-2006/06/19
- * Added Ayothaya to nopenalty and nopvp mapflags. [Evera]
- * Combo-used Skills with State "move_enable" will now override the "can't
- move delay". Fixes Break-Fall -> Jump-Kick. [Skotlex]
- * Some more cleanups of battle_calc_damage to account for absorbed damage
- reductions. [Skotlex]
- * Moved back Soul Drain code from mob_dead to skill_counter_additional_effect.
- Now we are back to where the skill animation does not shows, but you DO
- get SP T.T' [Skotlex]
- * Some cleanups and corrections in battle.c to account for negative
- (absorbed) damage. [Skotlex]
- * Fixed fame-list updating crashing char-sql server when the given char-id
- just got into ranking. [Skotlex]
- * Added missing Arunafeltz maps with information from NLZ [Evera]
-2006/06/18
- * [Fixed]:
- - Typo in status.c add_sc() using 'skill' instead of 'sk' as index, resulting in
- filling the SkillStatusChangeTableArray with junk data.
- - > NEEDS CONFIRMATION < Ends casting if player is knocked with freezing/stun/whatever
- - Typo in parse_frommap. [Lance]
- * [Fixed]:
- - clif_initialstatus using SHRT_MAX instead of USHRT_MAX for status_point.
- * [Temperory Fixed]:
- - Crashing of SQL char-server in parse_frommap case 0x2b01. [Lance]
- * [Removed]:
- - Large part of scripted mob control commands are removed.
- - Large part of scripted player control commands are removed.
- - Scripted mob slaves changing master ID.
- [Added]:
- - Unit control commands.
- - CALLBACK_NPCCLICK for scripted mobs, added this to db/const.txt too.
- - Macro RECURSIVE_MASTER_CHECK in battle.c
- [Modified]:
- - buildin_skilluseid and buildin_skillusepos -> buildin_unitskilluseid
- and buildin_unitskillusepos.
- - md->callback_flag to short (double word). [Lance]
-
-2006/06/17
- * Devotion absorbed damage will now appear to come from oneself (instead of
- the original attacker changing directions towards the Crusader) [Skotlex]
- * Updated clif_refres to send inventory, cart, and weight info. [Skotlex]
- * Fixed intif_guild_memberinfoshort to not leave a dangling pointer when
- someone logs out <.< [Skotlex]
- * Changed some mapflags related to the eye of hellion quest. [MasterOfMuppets]
- * [Added]:
- - buildin_checkcell, buildin_mobwarp, buildin_pcattack.
- [Improved]:
- - buildin_skilluseid and buildin_skillusepos to accept a few more arguments.
- - mob_script_callback to return sucess value [Lance]
- * Fixed the party HP packets to send max HP 10000 and scale HP accordingly
- when the player's HP doesn't fits in the packet's field. Fixes HP bars not
- correctly displaying the % of life when max HP is above 32k. [Skotlex]
-
-2006/06/16
- * Fixed option value being reset'ed on login (fixes cart/peco/falcon being
- lost) [Skotlex]
- * Corrected @speed to alter your base speed instead of battle one. Means
- the change remains for much longer (until status_calc_pc is invoked, which
- could be due to equipping/unequipping stuff) [Skotlex]
- * Modified the bNoMagicDamage/bNoWeaponDamage bonuses to be a 0-100
- setting. Meaning you can do bonus bNoMagicDamage,50; To make all magic
- damage be reduced by half. This bonus stack, so two cards with
- bNoMagicDamage,50 will give magic immunity. [Skotlex]
- * Removed setting gtb_pvp_only and replaced it with gtb_sc_immunity which
- specifies the threshold before the bNoMagicDamage starts blocking support
- statuses as well. ie: gtb_sc_imunity: 75 will mean that "bonus
- bNoMagicDamage,70;" reduces magic damage by 70%, but does not blocks heal
- or support status, while "bonus bNoMagicDamage,80;" does. [Skotlex]
- * Removed db_tables.sql as it's no longer used. [Skotlex]
- * the mvp_sd is removed when the mob is the emperium and there's no
- killer/exp-awarded (assumed killed by script), this prevents the on-kill
- event from triggering and giving the castle to whoever damaged the most the
- emperium without destroying it. [Skotlex]
- * [Added]:
- - Custom slave mobs to inherit the callback_flag.
- - Added option #25 to buildin_setmobdata to set the callback_flag. [Lance]
- * [Improved]:
- - Cleaned up Custom Mob Script Callback codes. Looks much better now :B. [Lance]
-
-2006/06/15
- * [Fixed]:
- - intif_parse_RenamePetOk for not compatible with ANSI-C initialzation specification.
- [Lance]
- * Added indexes for loginlog and ipbanlist as they did not have any.
- (note, someone already put the index on loginlog on trunk.) [Euph]
- * Merged Adam's patch to let the char-server handle validation of
- pet-name-change requests through the allowed char letters config. [Skotlex]
- * Fixed "wedding_ignore_palette: yes" not working when relogging with the
- gear already equipped. [Skotlex]
- * Added blocking of the Kick skills when you are a Soul Linker. [Skotlex]
- * Added enabling to turn off a kick-stance regardless of class. [Skotlex]
- * Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas
- options. [Skotlex]
- * Added back OPTION_XMAS, but the actual value is missing! [Skotlex]
- * Corrected chrif_save so that the player is not set offline on map-change.
- [Skotlex]
- * Added change-look support in pc_setoption when specifying OPTION_XMAS
- [Skotlex]
- * Fixed clif_parse_RemoveOption removing all options instead of just
- Falcon/Cart/Peco [Skotlex]
- * Fixed clif_send not sending packets to SELF when specifying AREA if the
- source is not on the map yet. [Skotlex]
- * Fixed and cleaned up script command 'equip' [Skotlex]
- * Fixed 'autoequip' items. [Skotlex]
- * Fixed Aspd not being updated in your status window after Agi/Dex
- increasing statuses take effect. [Skotlex]
-2006/06/14
- * Fixed map_nick2sd so that searching for "Adam" will not match a char
- named "Adam Smith". Thanks to Adam for reporting it out. [Skotlex]
- * Modified how luk reduces status changes by reducing the gap. Eg: resist =
- vit; resist += (max - resist)*luk/300; [Skotlex]
- * Added battle settings pc_max_sc_luk/mob_max_sc_luk to handle which is the
- luk threshold at which you gain inmunity (defaults to 300). [Skotlex]
- * Fixed buildin_getmobdata. It was trying to handle the first parameter as the
- array to fill in. [blackhole89]
- * Blocked again skill usage during marionette. [Skotlex]
- * Fixed main.sql adding a key on char_id rather than account_id for the
- char table. [Skotlex]
- * Cleaned up character saving in char-sql, it no longer needs to query the
- database to see if the player exists on each char-save, instead it checks
- the received data against the online-players db. No such fix is required
- for char-txt. [Skotlex]
- * Added an error message on the char-server when the received player data
- size does not matches with the expected size (should avoid the crash that
- happens on such a memcpy). [Skotlex]
- * [Improved]:
- - script_save_mapreg for MapregSQL Saving to display perfomance only in slow
- queries. [Lance]
-2006/06/13
- * Updated mob_db.sql and item_db.sql to latest. [Skotlex]
- * Added account_id index to char table. Thanks to Buuyo for reporting it.
- Sql users apply upgrade_svn7146.sql NOW. [Skotlex]
- * Marionette and Devotion will now check raw distance and ignore obstacles
- and the like. [Skotlex]
- * Added irc_channel_pass setting and prevent crashing when irc server
- lookup by host fails. Thanks to Trancid for the details. [Skotlex]
- * [Fixed]:
- - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
- [Lance]
- * Added support for reading correctly status change data from Guild and
- Homun skills. [Skotlex]
- * Added support for reading Homun skill data (which means the HM skills are
- now safe to add to skill_db, skill_require_db, etc) [Skotlex]
- * Oppositions can't be made during WoE now. [Skotlex]
- * Fixed a few compiler warnings from VC [Skotlex]
- * Commented out the Homunculus Skills<->Status Change link which was
- causing some memory corruptions. [Skotlex]
-2006/06/12
- * [Fixed]:
- - buildin_npcshopitem not allocating extra 1 block of terminator.
- [Added]:
- - Modified versions of Dj-Yhn's buildin_npcshopdelitem and buildin_npcshopadditem
- [Lance]
- * Updated clif_disp_onlyself to not use dynamic memory and write directly
- to the player's buffer. [Skotlex]
- * Updated @noask to also tell the user what he has just rejected (added
- msg_athena entries for each of the different requests). Also updated it to
- use clif_disp_onlyself. [Skotlex]
- * Fixed a pair of missing initializers in the clif storage functions.
- [Skotlex]
- * @heal no longer displays a healing animation. Fixes the client believing
- you couldn't be healed more than 32K. [Skotlex]
- * Now you can use any skills (except encore/dancing ones) while under
- Longing for Freeding. [Skotlex]
- * Now you can use any skills while under Marionette Control. [Skotlex]
- * Fixed npc_checknear's distance check returning the opposite of what it
- should (false when the range is correct and viceversa) [Skotlex]
- * Added a warning on item loading when an item is of equippable type but
- has no equippable position. [Skotlex]
- * Turning an alliance to an opposition won't work now during WoE [Skotlex]
- * Slaves can summon other mobs now. The only ones who can't do this are
- player summoned mobs. [Skotlex]
- * Merged the following functions for faster processing of items: [Skotlex]
- clif_storageitemlist + clif_storageequiplist = clif_storagelist
- clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist
- clif_itemlist + clif_equiplist = clif_inventorylist
- Note that the changes are a bit substantial and need proper testing!
- * Increased max knockback value support to 25. [Skotlex]
- * [Optimized]:
- - buildin_npcshopitem memory allocation to calculate before reallocating.
- [Lance]
- * Made guild member exp an unsigned int. [Skotlex]
- * Various cleanups to the npc clicking related functions. Should fix quite
- some possible crashes from crafted packets. [Skotlex]
- * Added overflow checks for bonus settings mdef_rate/def_rate. [Skotlex]
- * Added missing update of INT after a buf. [Skotlex]
- * Small cleanup of how SC_BLEEDING works. [Skotlex]
- * Fixed party_foreach_samemap invoking the function on the CASTER instead
- of on the party members. [Skotlex]
- * Modified clif_parse_NpcClicked to handle the different situations with
- different bl-objects (attack on players/mobs, click on npcs or mobs with
- npc attached) [Skotlex]
-2006/06/09
- * [Fixed]
- - Compilation warnings on guild.c and int_guild.c [Lance]
- * Added structure party_data and party_member_data to the map server to
- hold party-specific required information about parties including
- Monk/TK/SG/SN states and party member count. Family information is still
- missing, and handling of the state should probably be done by the
- char-server, too... [Skotlex]
- * party Hp updates are no longer done each time the Hp is modified, but
- together with the party xy timer. It means HP-bars will be a bit delayed
- before being updated, but packet consumption should be much less during
- heated battles. [Skotlex]
- * Fixed MoM's typo [Vicious]
- * Fixed map_readafm missing strcpy(afm_name, m->name). [Skotlex]
- * [Improved]:
- - npc_click interception on BL_MOB and BL_PC to let sd act accordingly.
- [Lance]
- * [Fixed]:
- - Execution of sleep/sleep2 more than once will hang the script_state.
- [Lance]
- * Fixed @mapinfo displaying incorrectly maps with nosave which send you
- back to your last savepoint. [Skotlex]
- * Moved guild_exp_rate from a mapserver battle config setting to a char
- server config. It no longer modifies the total taxed exp as seen on the
- guild information window, but directly modifies the exp that the guild
- earns. [Skotlex]
- * Added an error report and correction when the map server receives a guild
- from the char-server with more guild members than MAX_GUILD. [Skotlex]
- * Changed the interval between waterballs back to 125 [MasterOfMuppets]
- * Fixed a typo in char_sql/char.c, thanks to Euph [MasterOfMuppets]
-2006/06/08
- * Modified guild exp to be an unsigned int rather than a signed one.
- [Skotlex]
- * Fixed @skilltree printing out Unknown job for most targets used.
- [Skotlex]
- * Cleaned clif_pvpset to not send the packet to nearby characters when the
- source is GM-hidden. May help fix the crash on PvP with gm-hidden
- characters. [Skotlex]
- * Modified map_freeblock_unlock so that aFree errors will report the
- file/line that INVOKED the function rather than the function itself.
- [Skotlex]
- NOTE: Do NOT disable the memory manager as that will break this change.
- This change is to be temporarily set until the afree'd error can be
- resolved.
- * Updated mob_npc_warp to a three-state config switch. 0 disables. 1 enable
- only on warps that don't lead to nobranch maps. 2 - enable on all warps.
- [Skotlex]
- * Adjusted Don't Forget Me, Defender, Longing to use all val entries, and
- to hold the speed adjustment value rather than speed penalty (eg: 125
- instead of 25). [Skotlex]
- * Cleaned up status_calc_speed so that speed penalties are correctly
- handled (eg: 25% penalty is speed*100/75, not +speed*25/100). Thanks to
- Euph for pointing it out and Belle for the speed mechanics. [Skotlex]
-2006/06/07
- * Fixed Sense using mdef instead of mdef2 [Skotlex]
- * Fixed item-skills not showing up on login. [Skotlex]
- * Cleaned up clif_parseLoadEndAck, by testing which packets are required
- only on first-login and which ones are required on all map-changes.
- Skill-tree, Exp, Skill Points and most of the basic status are no longer
- sent on map-change (items, cart data and zeny still need to be sent one
- very map-change). [Skotlex]
- * Fixed the mob state not being set to Berserk/Angry correctly after the
- mob reaches the target's location. [Skotlex]
- * Added config setting mob_npc_warp, when set to yes, enables mobs to be
- warped between maps when stepping on a npc-warp. [Skotlex]
- * Added monster_ai setting &64, when enabled makes a mob run to any nearby
- npc-warp when their current target has switched maps. [Skotlex]
- * Added pc_calcexp to calculate individual exp bonuses acquired from exp's
- source (race bonus cards, SG Exp skills, pk-mode higher level exp) [Skotlex]
- * pc_gain_exp now also receives the source of the exp, when said source
- exists, bonuses are applicated as needed. [Skotlex]
- * Added status_kill when capturing a mob, should take care of the mob not
- respawning after caputed. [Skotlex]
- * Fixed item info not displaying the found item id [Skotlex]
- * Fixed item info not displaying the weight value properly. [Skotlex]
- * Adjusted status resistances and durations taking as base Viccious's info
- from the kro guidebook. [Skotlex]
- * Moved souldrain code from skill_counter_additional_effect to mob_dead. It
- should display the skill animation correctly now. [Skotlex]
- * Adjusted several sc rate/time reductions as pointed out by Playtester.
- [Skotlex]
- - Luk now plays a luk/10 reduction role rather than a luk/3 one.
- * Removed char_nick2id from char-sql server as it's no longer needed.
- [Skotlex]
- * Fixed quitting the map server not properly saving the storage before
- deleting it. Thanks to Adam for pointing it out. [Skotlex]
- * Cleaned status_get_sc_tick/status_get_sc_def to use the status_data
- function. [Skotlex]
- * SC_STOP's chance and duration can't be reduced anymore. [Skotlex]
- * Storm Gust no longer has a 100% chance to freeze by passing mdef, now it
- has a 300% base chance reduced by mdef and the like as explained out by
- Tharis. [Skotlex]
- * Frost Diver/Frost Nova's base freezing chance is no longer affected by
- target's int. [Skotlex]
- * [Improved]:
- - mob_dead not to remove script controlled monsters with player sprites.
- [Added]:
- - buildin_mobdeadsit :D [Lance]
- * [Fixed]:
- - temp++ gets issued before if(mvp_damage<(unsigned int)md->dmglog[i].dmg) in
- mob_damage. Thanks to seahorsix. [Lance]
- * [Fixed]:
- - Corrected login-server SQL to use *((ulong *)p) instead of (ulong)p [Lance]
- * [Optimized]:
- - list and size not being initialized (size get intialized in default: switch case)
- Eliminated default case and initialized list and size at the beginning. [Lance]
-2006/06/06
- * Hopefully fixed for sure mobs getting extra stats when changing-class due
- to the mobs level up setting. [Skotlex]
- * Removed a piece of code that should no longer be needed due to the
- combo-skill setting (inf = self, inf2 = no-target-self) which is blocking
- self-skills from being used on others (pets/mobs should be allowed to do
- that) [Skotlex]
- * Added a status_check_skilluse call in Sightblaster to prevent it from
- hitting hidden/cloaked/act-dead/etc players. [Skotlex]
- * Fixed firewall counter going down by 2 each hit rather than 1. [Skotlex]
- * Fixed Soul Burn not zapping away all SP. [Skotlex]
- * The monsters can level up setting will not take effect when the mob's
- level is LESS than their db counter-part (should prevent under-leveling
- causing underflows and semi-immortal mobs) [Skotlex]
- * Fixed mvp-exp calculations being messed up with more than one attacker.
- [Skotlex]
- * Changed the mob exp race bonus so that each player gets their own bonus,
- rather than the killer's bonus applying to everyone. Still not the
- "correct" way, but one step closer to it. [Skotlex]
- * [Fixed]:
- - Allocation of event_list in guild_npc_request_info to aCalloc so
- memcpy(ev->name,event,strlen(event)) will have a null terminator. [Lance]
-2006/06/05
- * Fixed a crash when using SL_SMA and the "combo" ain't ready. [Skotlex]
- * Hopefully fixed changing a mob's class causing them to get all sort of
- stat bonuses due to the mobs-level-up setting. [Skotlex]
- * Changed hit, flee, cri, flee2, def2 and mdef2 to signed short, def, mdef
- to signed char to correctly account for cards with penalties in said stats.
- [Skotlex]
- * Fog of Wall won't affect the caster now in any way. [Skotlex]
- * Added clif_fixpos packets before attacking for the first time to clear
- any position sync issues with the client. [Skotlex]
- * Fixed skill_unitsetting using layout->count for the for instead of
- group->count [Skotlex]
- * Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly
- increase dex/agi by 40% per level. [Skotlex]
- * Fixed char-sql server not deleting character variables when deleting a
- char. [Skotlex]
- * Corrected cloaking not ending on attack if you are near a wall. [Skotlex]
- * Updated pc_bonus to use cap_value on all status_data modifiers to prevent
- overflows/underflows. [Skotlex]
-2006/06/03
- * Fixed @mi/@mobinfo not showing the name collumns correcly [shadow]
- * Solved the bug that made firewalls only castable a few times until [MasterOfMuppets]
- you relogged. Thanks to Euph for the fix.
- * Added variable other_mapserver_count to chrif.c which holds total count
- of connected map-servers. By using this we prevent sending unnecessary
- packets to the char-server when there's no more map-servers connected.
- [Skotlex]
- - Affected packets are whispers, announces, party messages, guild messages.
-2006/06/02
- * Fixed Visual Studio 7.1 Solution File (Login TXT and Map TXT were removed)
- * Fixed a bug in unit_can_reach_bl which breaks path seeking when the
- target is near obstacles. [Skotlex]
- * Updated offensive use of Sanctuary to function like on the official servers [MasterOfMuppets]
- * Changed the interval between waterballs from 150 to 250 milliseconds [MasterOfMuppets]
- * Corrected clif_parse_takeitem to ALWAYS return a NAK packet when it
- fails. Fixes cases where the client gets "stuck" and refuses to let you
- pick any items. [Skotlex]
- * Removed the walk delay from firewall and changed its knockback [MasterOfMuppets]
- to 1 tile to make it act more like in the official servers.
- * Some cleaning of the mob slave ai. [Skotlex]
- * Corrected Brandish Spear to work on levels above 10. [Skotlex]
- * Updated Two-HandQuicken, One-HandQuicken to give 30 +2*lv% aspd-rate for
- skill levels above 10 (meant for boss casted skills) [Skotlex]
- * Fixed Spear-Quicken messing with the calc_flag [Skotlex]
- * Fixed Freeze/Stone/Benedictio not changing your elemental LEVEL to 1.
- [Skotlex]
- * [Fixed]
- - Yet another compilation warning. [Lance]
-2006/06/01
- * Altered status_calc_pc so that equipment scripts are ran before
- card-scripts. [Skotlex]
- * Fixed pc_bonus to not underflow/overflow when adjusting def/mdef.
- [Skotlex]
- - These two together, should fix Tao Gunka Card.
- * npc_debug_warps() will now be invoked if warp_point_debug is set.
- [Skotlex]
- * Updated item_db.sql/mob_db.sql to current. [Skotlex]
- * Fixed NPC_SELFDESTRUCTION not showing nor dealing damage. [Skotlex]
- * NPC_TRANSFORMATION/NPC_METAMORPHOSIS will now preserve the original mob
- without removing it when the skill level is greater than one. [Skotlex]
- * Added SC_DANCING declaration in the Status Change tables to signal it
- modifies Walk speed. [Skotlex]
- * Fixed pc_damage setting your canlog_tick even if the damage has no source
- (eg: poison, berserk) [Skotlex]
- * Berserk's aspd bonus now stacks with other aspd bonuses, but is still
- affected by Quagmire/Forget-me-not. [Skotlex]
- * Corrected setting slaves_inherit_mode to not apply to morphosis skills.
- [Skotlex]
- * Corrected pc_setoption to invoke status_calc_pc when getting/removing the
- cart. [Skotlex]
- * Fixed @mobinfo displaying the wrong element. [Skotlex]
- * Fixed Autoblitz taking into account target's luck rather than attacker's
- [Skotlex]
- * Fixed slaves warping endlessly to their master when the master-slave
- distance exceeds 30. [Skotlex]
- * SC_ORCISH will now be dispelled on logout (if debufF_on_logout is set)
- [Skotlex]
- * Removed attackrange/attackrange_ from TBL_PC, corrected clif.c using the
- incorrect range variable. [Skotlex]
- * You can now equip/unequip stuff while the storage is open. [Skotlex]
-2006/05/31
- * Fixed Soul Drain not really giving you SP [Skotlex]
- * [Fixed]:
- - Suppressed compilation warning in chrif.c [Lance]
- * [Fixed]:
- - Guys can't go across map-servers :( [Lance]
- * [Fixed]:
- - Restoration and saving of sd->npc_id must be done every time. [Lance]
- * Added back the Freeze/Petrify adjustments of -50%def and +25%mdef (when
- where these lost?). Thanks to Buuyo for pointing it out. [Skotlex]
- * Corrected the mob_ai&2 setting triggering rude-attacked due to can't walk
- delay. [Skotlex]
- * Made the char_name_option char_athena.conf setting apply to parties and
- guilds as well. It cannot be applied to pets yet without adding a
- change-name-request interserver packet. [Skotlex]
- * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them.
- [Skotlex]
- * Added function char_read_fame_list for famelist reading. Invoked it on
- init, and made it be sent automatically to connecting map servers.
- [Skotlex]
- * Some cleaning of the fame-list reading code. [Skotlex]
- * Some cleaning of the fame-update code, fixed a logic bug which made the
- ranking list fail to display the correct ranker names. [Skotlex]
- * Removed typedef bool from socket.h and included cbasetypes.c instead.
- [Skotlex]
- * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in
- status_calc_bl. [Skotlex]
- * [Fixed]:
- - Incorrect SQL syntax in login.c (missing collumn) [Lance]
- * [Improved]:
- - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance]
- * [Fixed]:
- - nullpo in pet.c caused by equipping without checking if the pet is available.
- [Lance]
- * [Fixed]:
- - Latest client support completed! [Lance]
- * [Fixed]:
- - Missing #include for cbasetypes.h in login server SQL.
- - Logic errors in run_script [Lance]
- * [Added]:
- - Partial support for latest login packet. But it seems to have a new security
- module. [Lance]
-2006/05/30
- * [Improved]:
- - Fake NPC interface to use real NPCs.
- - Scripting interface to restore and save sd->npc_id. [Lance]
- * Added function pc_check_skilltree for checking if you unlocked new
- tree-skills when raising non-passive skills. [Skotlex]
- * Fixed flee/hit calculation in status_calc_bl to account for bonuses from
- the base status. [Skotlex]
- * [Fixed]:
- - Compatibility problems in login.c [Lance]
- * Fixed pets ignoring can-act delays for skill usage. [Skotlex]
- * [Added]:
- - Mercenary.c in VS.NET 2005 project files
- [Improved]:
- - loginlog using unsigned long `ip` field.
- (Please check for compatibility problems). [Lance]
- * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain
- bonuses (like effect-on-hit) to stack. [Skotlex]
- * slaves inherit speed setting will now work regardless of whether the
- slave or master has the MD_CANMOVE mode bit. [Skotlex]
- * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex]
- * AL_TELEPORT will fail when used by slave mobs. [Skotlex]
- * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable
- attacks. [Skotlex]
- * Fixed status_damage not setting your HP to 0 when you died [Skotlex]
- * Fixed the pcbonus2 warnings using the wrong value before printing the
- invalid Element error. [Skotlex]
- * Fixed underflow issues when calculating dmotion. [Skotlex]
- * Fixed Absorb Spirit Spheres [Skotlex]
- * Added battle_config min_chat_delay (default 0, battle/client.conf)
- specifies in ms what is the min delay between player sent chats
- (whisper/global/party/guild). Messages that exceed this threshold are
- silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the
- player?) [Skotlex]
- * [Fixed]:
- - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance]
- * Rewrote/cleaned up @petfriendly. [Skotlex]
- * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex]
- * Updated attr_fix_table reading code to account for ELE_MAX (will
- correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex]
- * Aggressive mobs will now use battle_check_range rather than mob_can_reach
- to decide whether to lock-on or not to a target within sight-range. [Skotlex]
- * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex]
- * Added error messages in pc_bonus* functions when an invalid element is
- passed to the relevant bonuses. [Skotlex]
- * [Optimized]:
- - clif_specialeffect to use the enums.
- [Improved]:
- - buildin_specialeffect and buildin_specialeffect2 to accept effect area
- definition. [Lance]
- * [Added]:
- - Visual Studio .NET 2003 includes for mercenary.c [Lance]
- * Removed the on-die specific code from unit_remove_map and placed it on
- the corresponding *_dead functions. unit_remove_map should never assume the
- char died, it is just a "remove from map" function. [Skotlex]
- * Updated status_damage to handle the general death code (clearing status
- changes, clearing skill related data, sending death packet, etc). The
- return value from the *_dead functions will tell it what to do or not with
- the object (death aborted, clear it from map/memory, etc) [Skotlex]
- * Cleaned up pc_dead to take advantage of the fact that status changes are
- not ended until after the function. [Skotlex]
- * Disabled ontouch npcs triggering on hidden/chase-walk characters.
- [Skotlex]
- * Updated/adapted current Homun code to use the status_data update.
- [Skotlex]
- * Updated map-server Makefile to compile mercenary.* files. [Skotlex]
- * [Fixed]:
- - Pets attacking even master is dead. [Lance]
- * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0
- (negative values should be allowed when attack is absorbed by target's
- element) [Skotlex]
-2006/05/29
- * [Fixed]:
- - Missing ';' in item #4358 [Lance]
- * [Fixed]:
- - Missing maps in map index database. [Lance]
- * [Fixed]:
- - Battle mechanics in battle_check_target [Lance]
- * [Fixed]:
- - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing.
- [Lance]
- * Cleaned up friend list saving and fixed loading of friends.txt file
- (char-txt) [Skotlex]
- * Added the Arunafeltz maps, not tested yet [Playtester]
- - someone with an up-to-date client should test them
- * Fixed pc_gainexp resetting your exp to 0 rather than adding it in...
- [Skotlex]
- * Corrected aspd calculation code to avoid negative overflows. [Skotlex]
- * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR
- instead of BL_PC and BL_MOB [Skotlex]
- * [Fixed]:
- - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance]
- * Removed Undead being inmune to poison status. [Skotlex]
- * Removed speed penalty from SC_SKA [Skotlex]
- * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex]
- * SC_DODGE won't be dispelled on death now. [Skotlex]
- * [Fixed]:
- - pc_follow_timer possible triggering crash.
- - pc_reg_received to use battle_status.hp instead of status.hp
- [Added]:
- - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance]
- * Added a division by zero check in mob_dead to prevent the (impossible)
- case where a mob dies with received damage of zero. [Skotlex]
- * Modified skill_get_range2 to return range 9 for skills with range 0 for
- Non-Players. This usually signals Self skills, and mobs/pets should be able
- to use them in other characters. [Skotlex]
- * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex]
- * Fixed draining when the amount drained is negative (invoke zap rather
- than heal) [Skotlex]
- * Implemented GS_FLING as per the current skill description. [Skotlex]
- * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than
- status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex]
- * Added some missing SC_* entries on the initial listing (potion related
- and speed up ones) [Skotlex]
- * Fixed function declaration of map_getcellp() [Skotlex]
- * [Fixed]:
- - status.c:920: warning: 'mbl' might be used uninitialized in this function
- - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function
- - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function
- - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance]
- * [Optimized]:
- - Removed unused variable (account_id) in storage_guild_storagesaved.
- * [Optimized]:
- - Removed unused checks for unsigned data type and possible logic error for
- char type (gcc treats char as unsigned). [Lance]
- * [Fixed]:
- - Relogging in with 0 HP didn't trigger dead event. [Lance]
-2006/05/28
- * Added functions status_revive, pc_revive and mob_revive to handle revival
- (it doesn't handles player respawning, though). Fixed reviving @ commands.
- [Skotlex]
- * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes
- Bladestop causing an unknown status change message). [Skotlex]
- * Fixed MSS_DEAD state skills not triggering. [Skotlex]
- * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets]
- * [Fixed]:
- - script functions that doesn't pass references, thanks to End_of_exam. [Lance]
- * [Protected]:
- - clif_parse_LGMmessage from possible hacks [Lance]
- * Fixed unable to store n items into storage unless n was the total amount
- of items you had. [Skotlex]
- * Suppressed compilation warnings (unsigned and signed mismatches) [Lance]
-2006/05/27
- * Added structure status_data which holds status-related information (str,
- agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc)
- and weapon_atk structure with the weapon specific info (atk, atk2, element)
- to be used by all combat structures (TODO: Homun needs to be updated to use
- it). This in change involves a LOT of changes throughout the code and many
- optimizations were done as well. Partial list (see svn changelog for complete
- changes): [Skotlex]
- - NOTE: Changes are substantial! I tested a bunch of stuff and all the
- skills I changed the most, but it is possible there are unnoticed bugs
- remaining to fix!
- - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data.
- - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead
- - Added status functions to deal with damage and healing (status_damage,
- status_heal, status_percent_change) and a bunch of defines for easier
- handling of them (status_percent_heal, status_percent_damage,
- status_fix_damage, status_kill, etc). Objects must be hurt/healed through
- THIS, pc_damage/mob_damage most no longer be directly invoked!
- - Rewrote and cleaned up battle_calc_misc_attack
- - Merged config options pc_attack_attr_none, mob_attack_attr_none,
- pet_attack_attr_none into attack_attr_none (type 4)
- - Removed config options player_defense_type, monster_defense_type,
- pet_defense_type in favor of weapon_defense_type
- - Modified skill_calc_heal to take into account the MEDITATION bonus.
- - Modified Slim Pitcher so it will work when casted by non-players. Will
- now also work with SP-healing items.
- - Rewrote Freedom of Cast code to use function status_freecast_switch to
- switch adelay/speed when cast begins/ends.
- - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for
- easier updating when used in conjunction with ground skills.
- - Fixed Asura Strike being usable from within a combo regardless of combo skill.
- - Added status_calc_bl which does status-change related calculations using
- as base the base_status of the bl object and the SCB_* flag passed. This is
- invoked on status changes, and status_calc_pc will no longer be invoked
- (which results on much faster status-change calculations).
- - pc_clean_skilltree will now also remove item-granted skills.
- - Learning skills will now only invoke status_calc_pc when the skill is passive.
- - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related
- packets and functions ONCE regardless of skill-levls earned.
- - Cleaned up pc_ regen related functions.
- - Made player-sprite mobs have item pickup animation and walkdelay when taking items.
- - Clones will copy a player's base status rather than battle status (so
- status-change alterations are not cloned)
-2006/05/26
- * Part B of the homunculus code. [blackhole89]
- While most of the homunculus handling functions are in now, it still lacks
- code required for players to create it.
- Given I haven't screwed up, you could master yourself one through the DB though.
- * Fixed crashing in mob.c [Lance]
- * Patches to allow everything to work right. + 1 more sample script. [Lance]
- * Mob control engine tested 99% working so far. [Lance]
- * Change scripting engine's NPC scope vars to dot (.) style.
- * Improved and (should be fully) fixed the mob control engine. [Lance]
- * Fixed typos in char.c [Lance]
- * Rewrote fame rank lists system to reduce char-server load, as requested by
- Skotlex: now it has a copy of those lists, and updates only the proper one
- when needed instead of rebuilding all from saves everytime (which required
- to always save the character before rebuilding the lists) [DracoRPG]
- - Note it hasn't been compiled nor tested with SQL, please do it for me
-2006/05/25
- * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional
- int-based damage component (which is added right before elemental
- modifiers) as described by AuronX. Pending further refining. [Skotlex]
- * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus]
- Fixed atcommand @request MSG numbers accordinly.
- On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too
- * Added NoVending mapflag. You may disable vending in the streets [Lupus]
- * Increased capacity for Account Variables to 64 [Skotlex]
- * Reverted Intravision implementation to that of stable's. [Skotlex]
- * Corrected Login Server taking it's first argument as both login config
- and lan config. [Skotlex]
- * Fixed mob control commands.
- * Fixed memory leak in scripts (again). Still have a few lying. [Lance]
-2006/05/24
- * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout.
- * Item sharing now shares the same rules as exp sharing (no sharing when
- dead, or idle, etc) [Skotlex]
- * Fixed summoned slaves being able to cast onspawn summon-skills (slaves
- aren't supposed to be able to call minions) [Skotlex]
- * The clif_skill_poseffect packet will not be invoked in Snap unless the
- skill was successful. May fix the client-position lag. [Skotlex]
- * Merged item_db.sql from stable (the one from stable was more recent than
- the one of trunk...) [Skotlex]
- * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex]
- * Corrected a pair of incorrect sql query parsing logic in the login-sql
- ban request packet. [Skotlex]
-2006/05/23
- * Corrected mob angry mode, now it only "restores" itself after being hit
- when the mob has no target within their range of sight rather than on
- picking a new target. [Skotlex]
- * Fixed wedding sprite where it would stay active after unequipping. [Zido]
- * Some cleanup of run_script, should fix the memory leak there. [Skotlex]
- * the charname request hack message has been downgraded to only include
- GM-invisible characters. [Skotlex]
- * corrected clif_charnameack to send negative ID when a disguised player
- asks for it's own disguised name. [Skotlex]
- * Cleaned up the disguised target-id checks taking into considering that
- the only character that sees a negative ID is the same disguised character.
- [Skotlex]
- * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce
- defense), Investigate and Icepick will now use the final def/vit-def values
- rather than the base ones. [Skotlex]
- * The move-enable condition checks for skills are now checked for only when
- on skill use, not at cast-end time. [Skotlex]
- * Corrected clif parse name request failing on disguised characters [Skotlex]
- * Corrected Soul Drain draining from all non-ground-based skills including
- non-magic attacks. [Skotlex]
- * Corrected pc_setoption to change the option and then change class.
- changing option-wedding will automatically convert the view-class as well.
- [Skotlex]
- * Corrected the 15% drop rate increase when killing higher level mobs in
- pk-mode triggering for all mobs with lower level than yourself. Thanks to
- Vayu. [Skotlex]
- * Fixed typo (this time it's not my fault) in script_reload() clearing the same
- db each time o_o [Lance]
- * Fixed sleep command. [Lance]
- * Added 'setd' support for local NPC scope (') variables. [Lance]
- * [Scripting Engine Update] New variables are ready to be used. [Lance]
-2006/05/22
- * Updated skill_delayfix to return 0 for mobs since they have no skill
- delay other than the one specified in mob_skill_db [Skotlex]
- * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to
- Vayu for pointing it out. [Skotlex]
- * status_get_sc_tick will now use directly Stun's formula rather than
- invoking the status sc chance once. [Skotlex]
- * Fixed a possible null pointer in script command misc_effect [Skotlex]
- * Modified Investigate to take into consideration final def/vit-def rather
- than base values for damage adjustment. [Skotlex]
- * WARNING: New scripting system contains memory leak
- TODO: Free all scripts using script_free_code() instead of old methods. [Lance]
- * Excluded idle and auto-trade party members from TK_POWER list. [Lance]
- * Fixed compilation errors.
- Tidy up jobmaster for easy debugging. [Lance]
-2006/05/21
- * Part A of the Homunculus code.
- This only features the structures, status_* and clif_* (packets) and is
- not functional yet in any conventional way, but doesn't interfere
- with present functionality either.
- Main purpose is helping me to keep my work organized. [blackhole89]
- * Fixed the "fake" mute status bug. [Zido]
- * Speed up array size calculation and deletion. [Lance]
- * Player must learn the skill before doing auto-spell [Lance]
- * Exploit prevention in clif_parse_NpcStringInput [Lance]
- * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus]
- * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus]
-2006/05/20
- * grfio_final moved back if any of GRF overriding is enabled so servers
- with such configuration will not have different values after reloading. [Lance]
- * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance]
- * Abit of alterations to login-server. [Lance]
-2006/05/19
- * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance]
- * Small change in pc_additem that could be fixing the current bug with new
- items not getting added. [Skotlex]
- * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex]
- * Likely fixed the mob-skill random picking behaviour causing infinite
- loops sometimes. [Skotlex]
- * Modified mobskill_use behaviour to pick a random starting point and check
- skills from that, rather than always checking from first to last. Fixes
- skills with high priority blocking skills lower down in the list from
- triggering. [Skotlex]
- * Updated mob ai behaviour so that mobs use IDLE state skills when their
- current target cannot be reached for melee fighting. [Skotlex]
-2006/05/18
- * Added 5 config settings to adjust damage in pk-mode servers (misc.conf)
- [Skotlex]
- * Fixed mob_max_skilllvl being capped to 11! [Skotlex]
- * Rewrote/cleaned up several functions in storage.c [Skotlex]
- * Optimized pc_additem comparisons to account for items with more than four
- slots. [Skotlex]
- * Updated clif.c to enable retrieval of items from cart/storage while
- trading. Exception is retrieving items from the cart while vending.
- [Skotlex]
- - The reasoning is that an ongoing trade will not get "corrupted" if you
- earn items before it is commited (only if you lose items from your
- inventory), and it is an annoyance when you realize the stuff you want to
- trade is on the cart/storage.
- * skill reiteration code now does not checks for the trigger-area of the
- skill in the case of non-players, which means mobs can now place traps in
- cells adjacent to each other. [Skotlex]
- * Applied an experimental weather code that should lower bandwidth usage to
- near-none, which's only disadvantage should be the weather not clearing out
- until moving to another map (even when the mapflag is removed from the
- current map). Please test and report if there's any anomalies with it.
- [Skotlex]
- * NPC_AGIUP will now give movement boost of 50% [Skotlex]
- * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex]
- * MO_BODYRELOCATION will send the slide packet with the actual src's
- coordinates rather than selected tile. [Skotlex]
-2006/05/17
- * Modified mob_can_changetarget to return true always when the new target
- is the provoked-by character. Fixes provoke not making the mob change
- target when it already is locked on another player. [Skotlex]
- * Added check to clear previous skill when combo time ends. Should fix TK
- Rankers being unable to initiate a combo with the same kick their previous
- combo was finished with. [Skotlex]
- * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex]
-2006/05/16
- * Modified "hide woe damage" to send the number of hits rather than 1 as
- damage Because when the damage is less than the number of hits, the client
- will display MISS. [Skotlex]
- * Fire Pillar will now do 200%MATK damage per hit when level is >10.
- [Skotlex]
- * Blood Drain always hits now. [Skotlex]
- * Fixed Mob Area Skills not updating their use-time (rendering their skill
- delay useless) [Skotlex]
- * Search free cell will now skip picking the center-tile as target
- location. Will prevent slaves from walking on top of their master, or mobs
- placing stuff right under themselves with the "around" target conditions
- among other things. [Skotlex]
-2006/05/15
- * Small changes to the skill.conf
- - Monsters now can place ground skills on top of each other by default
- - Land_Skill_Limit format changed and set to "Only Players" by default
- * When reading mapflags, when a map is set to be pvp or gvg, the other will
- be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex]
- * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the
- skill level is above 10. [Skotlex]
- * Sorted out the item_data structure, getiteminfo should work correctly
- now. [Skotlex]
- * KA* skills can now be casted on other Soul Linkers as well without the
- Spirit requirement. [Skotlex]
- * Soul Drain will now show the SP drained regardless of drain display
- settings. [Skotlex]
- * SC_COMBO state will now end in skill_attack rather than
- skill_check_condition (as it is required there to apply damage bonuses
- based on combo-casted skills) [Skotlex]
- * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096)
- [Skotlex]
- * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode
- servers. [Skotlex]
- * When removing a castle's owning guild, the char servers will erase the
- guardian data now. [Skotlex]
- * Changed the behaviour of immobile mobs when they can't chase their
- target. Rather than using a longrange skill and then unlocking, they will
- use an attack/angry state skill and then unlock. [Skotlex]
- * Some adjustments of how disguising + gm-hiding work together. [Skotlex]
- * Fixed clif_GlobalMessage being the exact same function as clif_message
- (the first should send to ALL_CLIENT and the later should send to
- AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex]
- * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex]
- * Characters in vending are now always considered "idle" if the
- idle_no_share setting is active. [Skotlex]
- * Players with OPTION_INVISIBLE should not be sent to clients. [Lance]
- * Remaining fixes for item scripts. [Lance]
- * Added NPC event deprecated warnings to ease debugging old scripts. [Lance]
-
-2006/05/12
- * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance]
- * Bugfix on fake npc [Lance]
- * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89]
- * Reverted again the change that stuns the caster on Ske, Ska, Swoo when
- the target is a nonplayer (rather than always) [Skotlex]
- * Modified mob_spawn_once so that coordinates -1,-1 are "random around the
- player" while 0,0 are random around the whole map (regardless of whether
- there's a player attached or not) [Skotlex]
- * Knockback will no longer work on traps during woe. [Skotlex]
-2006/05/11
- * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage
- [Skotlex]
- * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively)
- of 40% per level. [Skotlex]
- * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows.
- [Skotlex]
- * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex]
- * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex]
- * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex]
- * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2)
- [Skotlex]
- * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10
- secs (reducable) if you target a mob that already has Swoo active. [Skotlex]
- * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to
- Tanaous [Skotlex]
- * Added back the missing code that substracts arrows when normal-attacking.
- [Skotlex]
-2006/05/10
- * Changed the state of Asura back to explosionspirits, added a hardcoded
- move_enable check when invoking Asura and NOT while in BladeStop or a
- Combo. [Skotlex]
- * Added back SC_XMAS to status.c, it got lost sometime during all the
- previous reworkings. [Skotlex]
- * Changed wedding costumes to use setoption rather than changebase.
- [Skotlex]
- * Modified setoption so that flag 1 or no flag adds an option, and flag 0
- removes it. [Skotlex]
- * Updated script_commands with the new behaviour. [Skotlex]
- * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather
- than 15. [Skotlex]
- * Users are now able to use their own dnsbl servers (login_athena) [Zido]
-
-2006/05/09
- * Rewrote/cleaned up trade.c for a more clean trading implementation.
- [Skotlex]
- * Added @request commands, sends a request to all connected GMs of
- lowest_gm_level or above as a whisper message. Defaults to gm level 20
- users (UNTESTED). [Skotlex]
- * Modified @commands to use Meruru's code which is faster and does a fair
- attempt at tabulating the commands presented. [Skotlex]
- * Updated SKA to return a random value between 0 and 99 each time
- status_get_def is invoked. [Skotlex]
- * Updated Making Arrow to not include unidentified items in the list.
- [Skotlex]
- * Reduced drop slots from 15 to 10. [Skotlex]
- * Updated mob_db.sql with the current data. [Skotlex]
- * Updated setoption script command to receive a second (optional) argument
- flag. If the flag is 1, the option is added to what the player currently
- has; likewise using flag 2 removes only that option. No flag (or any other
- value) is the older behaviour of removing all other options and setting
- specificly what is passed. [Skotlex]
- * Updated script_commands information for setoption due to this change.
- [Skotlex]
- * Small fix in npc-created chat rooms to properly include the terminating 0
- on the chat's event. [Skotlex]
- * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer
- get reduced by 50% regardless of who is standing on the fog. [Skotlex]
- * monster_ai&2 will now trigger the rude-attacked skill when the mob can't
- move and the attacker is out of it's attack range. [Skotlex]
- * Added missing icon for Joint Beat [Skotlex]
- * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex]
- * Treasure chests will now be excluded from the mob-drop listings
- (@whodrops) [Skotlex]
- * Fix on pc_skill which fixes overlapping when one gets more than one bonus
- for the same skill. [Skotlex]
- * Updated main.sql's loginlog table structure. [Skotlex]
- * Added svn_update6533.sql to update the loginlog structure as suggested by
- theultramage. [Skotlex]
- * Cleaned up somewhat the implementation of BladeStop. [Skotlex]
- * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet)
- when crafted for non-players. [Skotlex]
- * Script commands sc_start, sc_start2 and sc_start4 will now start
- regardless of sc defense of the target player (that is, they cannot be
- avoided/blocked) [Skotlex]
- * Fixed a possible counter overflow in attacked_count, changed the var size
- to unsigned char since the code can handle the overflow now. [Skotlex]
- * Multiple targets again reduces armor defense, as reported by Tharis.
- [Skotlex]
- * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex]
- * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex]
-2006/05/08
- * Reverted the change that was making ES skills stun the caster always.
- [Skotlex]
- * Removed the fixpos packet which is sent whenever you are hit while moving
- as Aegis doesn't sends this packet neither. [Skotlex]
- * ES magic will now put the caster on stun for 0.5 secs regardless of
- whether the skill-target is a mob or not. [Skotlex]
- * Added function clif_party_join_info which sends packet 0x1e9 each time a
- party-member joins. This packet (as redundant info as it has) should also
- contain the field for "adoptability", but that needs to be coded in yet.
- [Skotlex]
- * Added clif_ParseAdoptRequest which does the basic adoption handling. More
- checks and the reply packets still need to be coded in. [Skotlex]
- * Happy State and TK stances won't dispel on death now. [Skotlex]
- * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in
- skill_check_condition now. [Skotlex]
- * Modified TK-ranker infinite combos to behave as described by AuronX.
- Refer to his thread in the development section for details. [Skotlex]
- * Made all Soul Link Spirit skills not be castable on self. [Skotlex]
- * Changed rate of NPC status effect skills to 50+10*lv% base chance
- (guessed, but better than 100% for all levels) [Skotlex]
- * Changed max level of NPC status effect skills to 5 [Skotlex]
- * Increased max number of tries to find a random spot in maps to 1000 since
- some maps have so many non-walkable tiles it's hard to find one in just 100
- tries. [Skotlex]
- * status_set_viewdata will remove the Wedding Option status when you set a
- class that is not wedding. [Skotlex]
- * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex]
- * idletime will now be updated on attack-request, not on sit/standup
- [Skotlex]
- * Party members sitting will no longer be considered idle. [Skotlex]
- * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used
- with the disguise/undisguise script commands instead). [Skotlex]
- * Moved Sharp Shooting display to the block with Auto-Counter (since that's
- the other skill that can show critical as well) [Skotlex]
- * Corrected some fields in the standing still packet (guild emblem being
- stored as a Long when it should be Short) [Skotlex]
- * Modified most fields of view_data to be unsigned shorts rather than
- signed ones. [Skotlex]
- * On-Touch NPCs will now make you stop walking when you trigger them.
- [Skotlex]
- * ShadowJump/JumpKick will make you land on the target's cell now.
- [Skotlex]
- * Fixed Kaahi triggering only once per skill duration. [Skotlex]
-2006/05/07
- * Fixed readme/changelog.html [KillerBox]
- * Removed old logs. [Lupus]
- TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index
-2006/05/05
- * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc
- before sending one (as it's not required to send twice).
- * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps
- players and still continues execution to work). [Lance]
- * Updated item_db.sql to current. [Skotlex]
- * Fixed a bug in @commands, most likely the reason some people were still
- getting crashes. [Skotlex]
- * Fixed @commands not showing the last available commands (unless the total
- amount of commands is divisible by ten) [Skotlex]
- * Added a npc-script-event cache to avoid looking up event-scripts every
- time they need to be executed. Events cached are all those defined in
- script_config (on login, logout, mapchange, death, kill, level up) [Skotlex]
- - Since the cache holds direct pointers to the npcs/events, do NOT unload
- the related NPCs or you'll get dangling pointer crashes. However,
- @reloadscript will work fine.
- - Set the etc_log to on to see a summary of npcs/events loaded for script
- execution on startup.
- * The Rest bonus activated by using /doridori while in rest should now
- trigger with all the class tree (TK/SL/SG) [Skotlex]
- * Fixed Kaupe always triggering when the one who was under Kaupe was a
- player rather than the one attacking... [Skotlex]
- * /doridori now won't double the HP/SP regen of TKs, it only activates
- their "happy" state. [Skotlex]
- * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex]
- * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex]
- * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills
- (even if there's no other TK around). [Skotlex]
- * Added battle config settings view_range_rate and chase_range_rate to
- adjust the view-range and chase-range (range2/range3) of the mob_db without
- having to manually change them (battle/monster.conf) [Skotlex]
- * Kaupe now will only block all skills of players, for non-players, only
- normal attacks can be missed. [Skotlex]
- * Moved the Kaite spell-reflect code after the damage calculation function,
- so the reflected damage is exactly the damage the original target would
- have received. Will only trigger if the damage to be reflected is above 0.
- [Skotlex]
- * OnEquip scripts will now trigger on log-on. [Skotlex]
- * Infinite Endure will no longer give mdef bonus. [Skotlex]
- * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to
- start/end infinite endure. [Skotlex]
- * Fixed Kaahi's SP cost per heal. [Skotlex]
- * Now when walkdelay is set to 0, characters will stop walking when hit,
- but will not have any walk delay. (previously setting walk delay to 0 would
- not even stop characters from walking when hit) [Skotlex]
-2006/05/04
- * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido]
- * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex]
- * Some clean-ups in the mob_ai [Skotlex]
- * Improved atcommand autoloot, now displays droprate in percents and notices
- player if autoloot is already on or off. Also simplified the code [Harbin, Kain],
- commited by erKURITA
- * Added one grace range in the mob_loot search function which should fix
- mob_can_reach failing when invoked with the same distance that distance_bl
- returned. [Skotlex]
- * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex]
- * Eska is now usable on bosses. [Skotlex]
- * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex]
- * clif_skill_failed will print out a debug line with the skill_id (since
- the current null_po does not helps at all to fix it) [Skotlex]
- * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex]
- * Rewrote Kaahi to behave as it should. It will heal whatever amount of
- damage accumulates in the time2 interval (500ms by default) after being
- hit. [Skotlex]
- * Changed skill_unit_move_unit_group to enable moving of all types of
- ground-skills except ensembles (fixes warmth not following you) [Skotlex]
-2006/05/03
- * Kaahi now triggers every 500ms rather than on every hit (but it only
- heals if in those 500ms an attack that would previously trigger Kaahi has
- taken effect). In other words, it works just like before, except damage
- gets "buffered" into 500ms slots. [Skotlex]
- * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex
- * Knowledge will now only trigger if you logon to the memorized map, not
- walk into it. [Skotlex]
- * Corrected @whomap directly invoking msg_table[] rather than msg_txt()
- [Skotlex]
- * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong
- and not fix the pet issue, but I doubt it'll cause any problems that won't
- be fixed by making the pet move. [Skotlex]
- * Updated Charge Attack's state from none to move_enable. [Skotlex]
- * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex]
-2006/05/02
- * Fixed standing up not really standing you up. [Skotlex]
- * Moved battle_consume_ammo to the end of skill_castend_damage_id,
- skill_castend_nodamage_id and skill_castend_pos2 rather than
- battle_calc_weapon_attack. They will trigger when the player's arrow_atk
- state is active and a ground skill was not invoked. It should fix all
- issues with splash/ground skills consuming ammo per target rather than once
- per skill use. [Skotlex]
- * Added structure state to the ground skills, their fields are magic_power,
- into_abyss and ammo_consume to indicate the states that were previously
- stored in val3. [Skotlex]
- * Implemented desperado as explained by Rockman-EXE. The skill-effect is
- not showing up though, I'll need some logged packets to see what's missing.
- [Skotlex]
- * Removed the unit_can_move checks in skill cast-end, they should be
- performed in skill_check_require when the skill's state is move_enabled.
- [Skotlex]
- * Changed extremity fist's state to move_enabled, the explosion spirits
- check is now hardcoded. [Skotlex]
- * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with
- Haplo. [Skotlex]
- * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are
- impossible to steal unless you have at least 100% steal-rate (where steal
- rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[
- * Cleaned up clif_parse_action_request to enable sitting/standing while in
- shops, interacting with npcs, etc. [Skotlex]
- * Kaite now works against all types of spells. [Skotlex]
- * Kaupe now works against all skills. [Skotlex]
- * Sanctuary now won't damage non-enemies. [Skotlex]
- * Blessing now will always give you bonus stats even if you are wearing
- undead armor. [Skotlex]
- * Modified how Rogue's treasure works so that you get +1% to your steal
- rate rather than +0.01% to the final rate. [Skotlex]
- * Rewrote Warmth to use ground-skill-units, it should behave now like in
- officials (implementation is not quite the same, but it should yield the
- same effects while consuming less bandwidth). "Stacking", as it's called,
- is possible now, but limited to eA's minimum timer skill interval (100ms).
- [Skotlex]
- * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than
- +5+lv to all stats (as explained by Playtester and Tharis on how the skill
- behaves). [Skotlex]
- * Allowed SG_FEEL memorizing the same map for all three. [Skotlex]
- * SC_FUSION won't end when you die now. [Skotlex]
-2006/05/01
- * Added knockback when you run into a wall during running. However
- position is not being refreshed on the client yet... [Skotlex]
- * Fixed pc_disguise not allowing you to "redisguise". [Skotlex]
- * Corrected a crash when sd is null in npc_event [Skotlex]
- * After testing to make sure it works properly, I'm including
- new battle conf options to limit MVP drops. [Reddozen]
- * Removed OPTION_XMAS, it seems to not exist.... [Skotlex]
- * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO)
- since it has a visual effect to use. [Skotlex]
- * Corrected the value of OPTION_FLYING [Skotlex]
- * Using SG_FUSION ends Soul Linked effect. [Skotlex]
- * status_setviewdata will set your option accordingly when the previous/new
- view-class is wedding or xmas suit. [Skotlex]
- * Added function map_foreachinshootrange, behaves the same way as
- map_foreachinrange, but it also performs a "shoot-path" check before
- invoking the function. Used in the skill subtimer function if
- skill_wall_check is defined. [Skotlex]
- * Fixed AL_WARP displaying "Unknown Area" selections when you don't have
- all memo points used up. [Skotlex]
- * Fixed alive_count not being reset on skill unitsetting, which leads to
- some groups not being cleared once all their units expire. [Skotlex]
- * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved
- to skill_counter additional effect so it may trigger even on miss. [Skotlex]
- * SKA no longer blocks skills. [Skotlex]
- * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance]
+Date Added + +AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK. +IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. + +2006/11/29 + * Probably fixed the Segmentation Faults we've been having. [FlavioJS] + Description: A player quits and it's session is freed and set to NULL, + but the char server already sent a packet with player information + (registers, storage, ...). If a message is sent in consequence of + updating that info, a segmentation fault happens because + session[sd->fd] is already NULL. + Fix: make shure the session of the target player is valid before + processing the rest of the char server's message. + * Some minor cleanups. [FlavioJS] + * Fixed the new npc parsing code not accounting for windows-style line + terminators, which as a side effect messed up mapflag parsing if the file + had windows-style terminators, which coincidentally was the case for the + nopvp file, which unfortunately meant that all towns became pvp! [Skotlex] + * HT_PHANTASMIC no longer knocks back even when it misses. [Skotlex] + * Earned exp by dead homuns will now be lost (same treatment as earned exp + from players that died) [Skotlex] + * Now gvg_dungeon mapflag will activate the other mapflags which are + required: pvp, pvp_nocalcrank and pvp_noparty/pvp_noguild (they are forced + to off if gvg_dungeon is on and viceversa) [Skotlex] + * Cleaned the pvp ranking code so that it takes effect even if + pvp_nocalcrank is active WHEN the map is a gvg_dungeon one. [Skotlex] + * Now homuncs and their masters are the only ones who can use support + skills on them. [Skotlex] + * Some cleaning on the homunc speed calculating code, so that it correctly + uses the default walk speed if the player has no speed yet. [Skotlex] +2006/11/28 + * Fixed a typo which made the wedding_ignore_palette setting not work when + you log on with them equipped [Skotlex] + * Applied The Ultra Mage's patch to use strict npc header formatting + parsing. Updated the relevant stock scripts/mapflags that didn't conform to + the standard. [Skotlex] + * Moved the blocking of casting supportive skills on homunculus from + battle_check_target to status_check_skilluse as bct is not invoked unless + the skill is offensive (or party/guild only) [Skotlex] + * Cleaned up status_calc_bl_sub_hom, fixed recasting dex/str/vit/int + bonuses skills making their atk/def/mdef stack with itself over and over. + [Skotlex] + * Updated sql files [Playtester] + * Changing setting the Guild Master from pc_authok to clif_parse_LoadEndAck + so that it will not fail to set the gmaster flag when the first person of a + guild to log on is the guild master. [Skotlex] + * Modified the way Storm Gust freeze's counter works. Now it checks for the + caster of the Storm Gust, if it's the same as the previous hit, the counter + is increased, otherwise, the ID is updated and the counter is changed to 1. + [Skotlex] + * Fixed always receiving at least 1 bexp/jexp even when the mob gives no + exp at all. [Skotlex] + * Changed write to send as suggested by TheUltraMage in: + http://www.eathena.ws/board/index.php?showtopic=105417 + Hopefully that will take care of the SIGPIPE problem in Debian and cygwin. [FlavioJS] + * Server name in core.c skipping '\\' characters. [FlavioJS] + * Memory allocation functions using file,line,func from the invoking functions. [FlavioJS] + * Other minor malloc changes. [FlavioJS] +2006/11/27 + * Now when a player's "attack once" request fails due to range, the client + is told to move to the target to attack it. This sort of fixes the problem + of the client SPAMMING the server with attack requests from afar without + even approaching the icewall. [Skotlex] + * Updated the status change field "option" to an int rather than short. + This fixes the option values for xmas/sightblaster not getting set, which + could explain why some people crash when equipping weapons while in xmas + suit. [Skotlex] + * Fixed the Homunculus hungry timer not starting on login. [Skotlex] + * Added logging for standard GM commands (/mm /b /kick etc) [KarLaeda] + * Some cleanups on the trade_additem function. When specifying a qty of 0, + an ack will be returned to the client so it doesn't gets stuck. [Skotlex] + * Update sql files [Toms] + * Corrected the skill animation for Absorb Spirits [Skotlex] + * Cleaned up a bit the implementation of how Gravity Field blocks the + caster from moving. [Skotlex] + * Mob class-changing will fail if the new class is the same as the previous + one. [Skotlex] +2006/11/24 + * Homunc's min matk is now always equal to max matk [Skotlex] + * Fixed EDP's damage being 100% more than it should (should be 4x, not 5x + on normal attacks) [Skotlex] + * Self Destruction will only hit everyone and not just enemies when used by + mobs (non marine spheres) unless the map is a versus map. [Skotlex] + * Spider Web's duration is now halved on players (before it was halved in + pvp maps only) [Skotlex] + * Likely fixed Homunculus not disappearing the second their intimacy hit 0. + [Skotlex] + * Fixed uninitialized variable fd being used in WFIFOHEAD in a few clif + functions. [Skotlex] + * Fixed the fact that the TURBO code breaks when you attempt to handle more + than one connection at a time within the same function. However this broke + map-server compilation, therefore, don't use TURBO yet! [Skotlex] + * While at it, cleaned a few packet implementations in the char/login + servers which were not only ugly, but had some really stupid flaws within. + [Skotlex] +2006/11/23 + * Completed Reddozen's hanging mapwarp code to support party and old syntax. [Lance] + * Updated sql files [Playtester] + * Made WFIFOHEAD() check for available buffer size remaining on the + connection, and when there's not enough space, it will increase it. + [Skotlex] + * Added define TURBO to the Makefile. It enables MouseJstr's socket access + optimization which should speed up the code when accessing the write/read + buffers repeatedly within a function. [Skotlex] + * Fixed the functions where the RFIFOHEAD/WFIFOHEAD functions were used + incorrectly (prevents TURBO enabled compilations from finishing) [Skotlex] +2006/11/22 + * Modified slaves_inherit_speed and slaves_inherit_mode so you get better + control of when to copy/remove modes/speed. See the conf changelog for + details. [Skotlex] + * Reenabled usage of mode MD_CHANGETARGET, so mobs with mode 0x200 will be + able to switch targets while attacking. [Skotlex] + * Some cleanups around usage of session[] in the map server, hoping that it + may fix some not very likely crashes. [Skotlex] + * Rewrote a few messy @ commands. [Skotlex] + * Fixed the homunc hungry timer being started when the homun data is + received from the char-server and the homunc is NOT 'active'. [Skotlex] +2006/11/21 + * Fixed the Auto-Berserk giving you back defense when it triggers during + berserk's HP penalty. [Skotlex] + * Some small changes in the pet ai to make it more responsive. [Skotlex] + * Rewrote the pet looting behaviour (taken from the mob's), pets are much + more smarter now when looting from multiple possible items. [Skotlex] + * Fixed pets/homunc trying to be deleted twice when they had 0 intimacy and + their master logs out. [Skotlex] + * Added support for specifying ammo type = 99 in the skill_require_db file, + it can be used to specify that any kind of ammo can be used with the skill, + but you NEED to have ammo equipped. [Skotlex] + * Corrected GS_DISARM, it is now a normal attack, which, when it connects, + has a chance to do strip weapon at a 3*lv% rate (modified by dex) [Skotlex] + * Fixed GS_PIERCINGSHOT, it should ignore defense [Skotlex] + * Corrected Gatling Fever costing SP when trying to turn it off. Also, + speed increases bonuses won't take effect while it's active. [Skotlex] + * Updated the main makefile with a new OPT line. It is commented by default + since it only works with GCC 4.X, when unset, it will hide away a huge + amount of warnings that have to do with stuff that is not gonna be + corrected in eA anyway. [Skotlex] + * Corrected TripleAction's damage. It should do 150%*3 instead of 100*3% + damage. [Skotlex] + * Updated GS_CRACKER's stun chance using Doddler's info as reference. + [Skotlex] + * GS_FLING won't reduce armor defense when used on players. [Skotlex] + * Moved ignoreAll to state.ignoreAll so it saves some space. [Skotlex] + * Cleaned up clif_parse_Wis to prevent crashes from forged packets + [Skotlex] + * Cleaned up the implementation of the ignore list so it's more efficient. + [Skotlex] +2006/11/20 + * Implemented NPC_DEFENDER. Reduces ranged Physical+Misc damage by 80% + [Skotlex] + * Improved the battle config reader so it accepts hexadecimal values. + Updated the monster_ai description to make use of this [Skotlex] + * Added monster_ai&0x200. When set, mob skill delays are shared. That is, + if the mob has several lines with the same skill, when the skill is used, + the delay will be set to all of them, not just the one entry used. + [Skotlex] + * Corrected NPC_BARRIER so it grants 100 def/mdef (and not just mdef) + [Skotlex] + * Weapon ATK bonuses will now only apply to watk and NOT watk2 on players + (on players watk2 is refine bonus) [Skotlex] + * Corrected NPC_KEEPING. it should give 90 def, not 100 [Skotlex] + * You now can't use other skills while a skill-induced "window" is up + (teleport, refining, etc). However, be warned that we aren't quite sure how + the server will clear this out if you decide to hit cancel on the window, + so skill-blockage is likely to happen (temporary solution: whenever you + change maps or warp the state is reset server-side). [Skotlex] + * Fixed itemskill variable being cleared before parsing the skill, this + causes auto-casted teleport to fail to skip the skill menu. It is now + cleared on castend_pos/id directly. [Skotlex] + * Skills with state 'move_enable' will now do a "walk path" check between + target cell/object and caster instead of a "shoot path" check, this would + fix skills like snap or charge from letting you "teleport" across pits. + [Skotlex] + * Raised the amount of skills that can stack on a single cell before the + "in-area/out-area" detection code breaks to 24 (from 8) [Skotlex] + * Fixed a crash in clif_SkillInfoBlock if the passed player already + disconnected. [Skotlex] + * Added limiting drop rate to 100% from item-bonuses that depend on the + mob's level so that "@autoloot 100" will catch them. [Skotlex] +2006/11/19 + * Removed security check since source level patch is applied. + * Reverted select(), created prompt(). + * Hack protection from packet monkeys in clif_parse_NpcSelectMenu. [Lance] + * Added 'cancel' button parsing in buildin_select menu system. Now scripts will continue + to load if 'cancel' is pressed and 255 will be returned. [Lance] + +2006/11/17 + * Corrected use of the party invitation reply packet, thanks to FlavioJS. + [Skotlex] + * Fixed potential hack by modifying packet of whispers. [Lance] + * Fixed potential crash in IRC processing message with '%' using *printf. [Lance] + * Fixed memory leaking caused by homun_data not freed when removed. [Lance] + * Fixed client not validating the chat-kick-request packet, which can cause + crashes. [Skotlex] + * Updated map_quit to handle removing of players who are not even + authenticated yet. [Skotlex] + * New connection requests are now also blocked when there's a player + already online but hasn't finished loading yet. [Skotlex] + * Because of these changes, the friendlist notification when people join + has been moved to LoadEndAck from pc_authok [Skotlex] +2006/11/16 + * Updated sql files [Toms] + * For the sake of avoiding confusion, all script events are named with prefix 'On' + from now on. [Lance] + * Edited atcommand and charcommand syntax. Now it doesn't need the useless + character name and ":". [Lance] + * Shadow Jump and Kirikage won't "move" you if you use them in GvG grounds. + Fixed Kirikage so it first warps you, and then you unhide. [Skotlex] + * Corrected Zeny Nage so the Zeny spent on the attack is always the exact + same value as the damage you are dealing. Also corrected it so it does half + damage when used on players. [Skotlex] + * Overlapping song/dances will now cause dissonance/ugly-dance level 1 + instead of retaining the level of their song/dance. [Skotlex] + * Fixed wrong check in @petrename, thanks to The Ultra Mage.[Skotlex] +2006/11/14 + * Early Christmas present. 3 new "features" which were very easy to code, + and should help scripters tremendously. Eapp is quite a way from being + ready, so these can't hurt: + * Implemented Karma: It turns out that when someone has karma, the client + believes this character is "evil", and will give you a cursor sword on top + of them automatically. So now the code will let characters with karma to + fight each other. This enables duels and other types of restricted pvp + where only the characters with karma can hit each others, and the rest of + players with neutral karma cannot be affected. Note that Karma cannot be + negative, and it can have any value between 0 and 256 (any non-zero value + makes them appear evil on the client). For now, characters with karma can + hit each other regardless of karma value, but perhaps it may be better to + let them to hit each other ONLY if they have the same karma (the whole + duel implementation COULD be cleaned up using Karma instead!) + * Added mapflags partylock and guildlock, which lock the state of the + parties/guilds on said maps: + partylock: blocks user party requests to create/invite/leave/kick + guildlock: blocks user guild requests to create/invite/leave/expel/ + make alliance/make opposition/delete alliance/delete opposition/ + break guild +2006/11/13 + * Fixed a bug where the char-txt server was incorrectly saving memos, + causing character data to be lost on restart. [Skotlex] + * HP Conversion will fail when used at max SP. It should not display any + errors to the client. [Skotlex] + * Modified yet again the login procedure to enable character variables to + work on item scripts. It SHOULD work crashless now. Please report any + problems it may cause. + * Volcano/Deluge/Violent Gale are now interchangeable, in the sense that + as long as one of these is out, casting any of the three will not consume + gems, and will use the remaining time of the previous one. In turn, Land + Protector will now always consume gems on every cast. [Skotlex] + * Small cleanup in the Land protector code which may fix it not blocking + AoE skills. [Skotlex] + * Fixed the interpretation of "head_dir". Removed setting head_dir to match + character direction in the whole code. Now it is only reset to 0 (look + forward) when unit_setpos is invoked, or when a character begins walking. + Thanks to FlavioJS for figuring out how the client parses the head + direction. [Skotlex] + * Moved status_calc_pc back to pc_authok. [Lance] +2006/11/11 + * Fixed debug message in login_sql [KarLaeda] +2006/11/10 + * Deluge/Violent Gale/Volcano tiles will now fail to be placed on cells + that are already ocuppied by anything else. [Skotlex] + * status_is_immune will now return 0 or the amount of immunity of the + target. In which cases it returns 100 for WoH and the GTB bonus when they + have passed the gtb_sc_immunity setting. This enables targetted spells to + not "fail silently" unless GTB's magic reduction is 100. [Skotlex] + * Fixed Homunculus being spawned as soon as they arrive from the + char-server even if the Master has not spawned on the map yet. [Skotlex] + * AL_TELEPORT now fails when used on top of Land Protector. [Skotlex] + * Some minor cleanings in pc_setpos, it may (or not) help fix that + homunc-caused "map_addblock" error message. [Skotlex] + * Corrected fog of wall, so that the deleted/doubled-duration effects are + calculated on a cell-by-cell basis. [Skotlex] + * Updated Land Protector: It will now delete/block effects of ALL ground + skills EXCEPT: Song/Dances/Traps (encores are still blocked). Land skills + blocked/deleted by LP also can't be casted on top of an existing LP. The + code uses the inf2 value of the skill to determine if it is a + song/dance/trap. [Skotlex] + * Ganbantein, mimicking LP, will now also remove ensembles. [Skotlex] + * Fog of Wall will fail when casted on top of a Volcano/Violent Gale + [Skotlex] + * Applied FlavioJS's fix to the npc whisper system. [Skotlex] +2006/11/09 + * Fixed status-change loading not working. [Skotlex] + * Fixed permanent mob-spawn script-events not working. [Skotlex] + * AL_CURE won't confuse undead players. [Skotlex] + * Corrected the Fog of Wall check so that it lasts 2x when it is placed on + TOP of a suiton/deluge, not when the caster is on top of them. [Skotlex] + * Updated status_check_skilluse so that when the caster has a disabling + status change (stun/petrify/etc) it will block the skill in all cases + EXCEPT on cast-end when the skill is ground-targetted. [Skotlex] + * Fixed Health Conversion skill formula bug. [Lupus] +2006/11/08 + * Fixed Desperado's hit-rate, now it behaves as it should. [Skotlex] + * The GVG map-packet will now also be sent for guild dungeon maps. + [Skotlex] + * Added clif_gospel_info which displays info about the buffs you are + receiving. Thanks to Rayce for the packet information. [Skotlex] + * Fixed Spider Web not ending when hit by a fireelemental attack. [Skotlex] + * Cast-time reductions from status changes will not be executed until right + before casting, to prevent status changes from ending when attempting to + cast and the attempt fails (invalid cells, not enough sp, wrong target, + etc, etc) [Skotlex] + * Added check to prevent Wand of Hermod from seeking for a partner to + encore, since the partner is supposed to be the warp. [Skotlex] + * Corrected the mob spawn reading code so that the event-name can be up to + 50 characters long (which is the actual event length) and so that it can + read spaces within them, it will also strip the leading/trailing quotes if + you use them so that the event is actually found on mob-death (so you can + do stuff like "My NPC::OnDead" as a valid event). [Skotlex] + * Moved the homunc inherit speed from the master from status_calc_pc to + LoadEndAck, since the hom's speed matches that of the master each time the + master changes maps. [Skotlex] +2006/11/07 + * Applied FlavioJs's patch which enables colored console output for Windows + systems. It also includes a config setting called + "stdout_with_ansisequence" with which you can turn off the color codes (in + case you are logging all output) [Skotlex] + * Added error reporting when the max number of ground unit cells has been + reached (this may be the reason why sometimes it fails to recognize when + you step out of a song/dance/encore) [Skotlex] + * Added passing the Endure effect to other devoted people. Note that the + "hit count" is individual for each character, and only when it ends on the + Crusader himself will that force it to end on everyone else. It also will + not transfer on gvg grounds, but it does transfer in pvp. [Skotlex] + * Fixed Reflect-Shield triggering Auto-Guard instead on devoted chars. + [Skotlex] + * Added a check to prevent casting ground skills on a target and vice-versa + when said skill use packets are received. It really shouldn't be + exploitable, but doing that certainly makes the server print a lot of + "unknown skill used!" messages. [Skotlex] + * Fixed map_foreachiddb and map_foreachpc so they don't encapsulate the + variable arguments into a double va_arg list. Thanks to the Ultra Mage for + the tip. [Skotlex] + * Cleaned up the clif_hate/mob_info functions with the correct fields/usage + as explained by Rayce. [Skotlex] + * Implemented clif_feel_hate_reset packet to properly display the Angel of + the Sun/Moon/Stars, thanks again to Rayce for the relevant information. + [Skotlex] + * LP will again block all land-stuff from being placed down on top of it + for the exception of Song/Dance/Encores. [Skotlex] +2006/11/06 + * Reapplied 'fix equipment scripts which are based on character variables not + working.' [Lance] + * Multiple Gunslinger skill corrections, refer to + http://ro.doddlercon.com/guides/gunslinger.html for information source: + [Skotlex] + - Corrected Ground Drift. Splash range of 3x3, stackable and placeable + underneath others, cast time is 2 secs. It's considered ranged, and it's + bonus damage increase is defense ignoring, always neutral. + - Corrected Bull's Eye implementation, it should deal normal damage against + non brute/demi-human targets. + - GS_DUST is now considered a short-range attack. + - Implemented Desperado's hit rate based on distance to caster as it's + believed to behave. + - GS_TRACKING's range is no longer affected by Snake Eye. + - GS_FLING's defense reduction is now 5*lv% + * Suiton's Speed/Agi penalty will affect everyone when used in versus maps. + * Corrected Kaupe so it doesn't ends on the first part of Soul Destroyer. + [Skotlex] + * Applied some cleaning to the way Tatami Gaeshi knocks back. [Skotlex] + * Cleaned up the way mobskill_use checks for the correct event. It should + fix unlimited mob-skill-casting issues. [Skotlex] + * Removed the return code entry when logging GM reload-GM requests + (login-sql),it'll just be stored as zero. [Skotlex] + * Added a fix on socket.c to not pick INADDR_ANY when choosing our own IP. + [Skotlex] + * Applied the correction on maprespawnguildid so that it parses ALL players + and not just those on a map. [Skotlex] + * TK_JUMPKICK now dispels normal aspd/speed potions (not berserk pitched + ones) and Preserve will be unable to block this. [Skotlex] + * Soul Linkers are now inmune to SA_DISPEL [Skotlex] + * You can now place everything (except magic skills) on top of LPs. + [Skotlex] + * Corrected Ganbantein to not touch song/dance/ensembles. [Skotlex] + * Status_calc_pc will refuse to execute if the player is still tagged as a + "new connection" and the invocation is not meant to be the first one. + [Skotlex] + * Swapped the order of checks in status_isimmune so that Wand of Hermod + skill blocking takes precedence over GTB's [Skotlex] + * Client packets will all be ignored while a player is not on a map until + the LoadEndAck packet is received. [Skotlex] + * Reverted changes, moved status_calc_pc(sd,1) back to pc_authok + since it causes problems. [Lance] + * Temperory fixed stability issue caused by initial status_calc_pc + being placed AFTER another status_calc_pc. [Lance] +2006/11/05 + * Updated sql files [Toms] + * Updated perl files acording to rev 9135 [Toms] +2006/11/04 + * Readded duel code in map_quit. Why it has been removed!? [LuzZza] + * Converted itemdb tables to use smallint. Credits to ALZ. [Lance] +2006/11/01 + * Reverted LK_Berserk HP requirement, as everything, including kRO X.2 and + pRO X.3, points that way. [Vicious] +2006/10/31 + * Fixed song/dance/encore cells not being placed down when casted on top of + a land Protector. [Skotlex] + * Update homunc's speed when master's speed changes, should avoid homunc's + speed = 0 on login (homunc's stats are calculated before master's stats) [Toms] + * When Kaizel (or super novice rebirth skill) triggers, you get debuffed + now. [Skotlex] + * Modified the player_cloak_check_type and monster_cloak_check_type + settings. 1 makes it check for walls, 2 makes cloaking NOT end on normal + attacks, and 4 makes cloaking NOT end when using skills. The default + setting for players is still 1, but for mobs the default has been changed + to 4. [Skotlex] + * Non-players can now use all skills while hidden. [Skotlex] + * Added a check to prevent adding negative damage to the total accumulated + damage in mob_damage. It could fix some exploits, even though mob_damage + should never be invoked with negative damage anyway. [Skotlex] + * Implemented the property where the first attacker get's double exp-share + than the others. Due to the way exp calculation is done, this bonus will + not apply when you use exp_calc_type 1 (damage/max_hp) instead of the + default (damage/total-damage). For now this bonus is done after calculating + who is the MVP character instead of before. [Skotlex] +2006/10/30 + * Fixed a little bug in event enqueue code [Toms] + * Updated the code so mobs can use ChainAction as a targetted skill. + [Skotlex] + * Added GroundDrift effects for Wind (Stun) and Fire (knockback). The + knockback value is unknown, so 3 is used for now. [Skotlex] + * Cleaned up some more the steal code, now you can't steal the last slot + regardless of skill level used. [Skotlex] + * Added consideration of Chain Action when cloning GunSlingers. [Skotlex] + * Modified battle_calc_return_damage to take the skill id as well, now + magic damage return will not work on skills tagged as ground or self + targetted. [Skotlex] + * Fixed Gank not working at all with the default max steal tries setting. + [Skotlex] + * Soul Drain won't work with skills tagged as self-targetted. [Skotlex] + * Improved the Suiton code so that the walk/agi penalty only applies to + enemies of whoever casted the skill. [Skotlex] + * Moved the initial status_calc_pc call to when you finish loading the map, + should fix equipment scripts which are based on character variables not + working. [Skotlex] + * Fixed getcharid according to samples and docs. [Lupus] + Thanks to joshuaali for pointing it out. eAPP has no such bug +2006/10/27 + * Fixed mob-skill event "skillused" not triggering at all. [Skotlex] + * Summoned mobs will only be removed from a map if their master is also + removed (dynamic mobs) [Skotlex] +2006/10/26 + * Updated sql files [Playtester] + * Experimental tweak to npc_parse_function - Overwrite existing functions. [Lance] +2006/10/25 + * Cleaned up some more the event dequeue code, it will no longer clear out + the npc_id if there's no events waiting to be executed (why does it clears + the npc_id anyway?) [Skotlex] + * Because of possible conflicts with this change and the on-login script, + now the on-login script is executed when the player has finished loading + into their start-up map rather than as soon as receiving the registry + variables from the char-server. [Skotlex] + * Some cleaning of the pc_eventtimer and pc enqueue code, it should fix + some memory leaks when the event counter does not matches with the actual + number of queued timers during logout. [Skotlex] + * Fixed "skill_sp_override_grffile: yes" causing crashes when parsing + Homuncuus/Guild skills. [Skotlex] + * Made the exp bonus settings be adjustable: [Skotlex] + - exp_bonus_attacker: Indicates how much additional exp a mob gives per + additional attacker (eg: 10 -> +10%*attacker) + - exp_bonus_max_attacker: Indicates at which number of attackers the bonus + is capped (eg: 5 -> 5 attackers, so a mob yield the same exp whether 5 or + 10 people attack it) + - Changed the way the party_even_share_bonus setting works. It now uses a + simple linear bonus increase (eg: 10 -> +10%*party member) + - The defaults are as explained by Tharis: +25%/attacker, capped at 12 + attackers, no party bonus. The first two can be found in exp.conf, the last + one was left in party.conf + * MG_STONECURSE and NPC_PETRIFYATTACK now use time1 to specify the + "petrifying time". This value has been set to 5 seconds. [Skotlex] + * Now when SC_STONE is triggered from status-change cards, it's petrifying + duration will be passed as 0, causing the minimum (1 sec) to be used. + [Skotlex] + * Got rid of clones in src: old Novice Grounds map -> new_zone0? [Lupus] +2006/10/24 + * Removed again your mdef reducing "petrifying" time as apparently it can't + be reduced by mdef. [Skotlex] + * Cleaned up the "show_steal_in_party" setting so it only takes effect when + the item was successfully stolen (there was no point in telling you the + item couldn't be stolen due to being overweight) [Skotlex] + * Cleaned up the pc_steal_item implementation (again). It now uses a more + random, simple approach in each steal attempt. [Skotlex] + * Changed the way the skill_steal_max_tries work. Now it actually MEANS the + max number of steal tries, use 0 to disable (unlimited tries). [Skotlex] +2006/10/23 + * Added a bunch of important indexes when dealing with the log tables. + Added upgrade_svn9050.sql which adds these indexes as well. [Skotlex] + * Expanded the family check to work as it should, exp-share-range is + respected, and the child is not considered for it (thanks to TheUltraMage + for the investigation) [Skotlex] + * Double Casting will no longer fail when used. [Skotlex] + * Modified SC_STONE so that the duration of the "petrifying" time is 5 secs + reduced by your natural resistance to petrify (which is mdef%) [Skotlex] + * Modified the meaning of the third column in the skill_require_db. Instead + of MaxHP, this is now called MaxHPTrigger. This column (which was + previously unused by all skills) signals the limit HP% that you can have to + be able to use the skill. For example, setting it to 20 means the skill is + unusable if you have more than 20% life (note that this is merely a + threshold setting, it won't actually substract HP when used!) [Skotlex] + * Adjusted LK_BERSERK so you can only use it when you have 20% or less + life. [Skotlex] + * Removed NJ_TOBIDOUGU adding damage to W_HUUMA weapons which somehow got + readded. [Skotlex] + * When nonplayers use Cloaking, it will be forced to level 10 since mobs + shouldn't have movement/attack restrictions while walking cloaked. + [Skotlex] +2006/10/20 + * Made HAMI_CASTLE use clif_slide rather than clif_fixpos. This should + fix clientside problems when castling between two positions the (client) + path finding can't find a walkable bath between anymore. [blackhole89] + * Fixed the Homunc not spawning next to you after receiving it's data from + the char-server. [Skotlex] + * Fixed Charge Atk being able to go through chasm/pits. [Skotlex] + * Moved the homunculus DB information from the player structure to the + homun structure. Modified the homunculus creation packets to hold this + information during creation, also, all initial values are handled by the + map-server, the char server only assigns it a homun ID. [Skotlex] + WARNING: This is yet untested! It's very possible something could had + broken after changing the format/size of the homunc creation packets. + * Added config setting "summon_flora_setting", which it you can decide now + two things: a. Whether or not players can harm your floras outside versus + grounds, and b. Whether or not you can summon out and mix different types + of plants at the same time. [Skotlex] + * Likely fixed pc_steal_item always failing to steal (it was attempting to + steal random item IDs...) [Skotlex] + * Cleaned up a bit the mob on-death event so that when the killer is a + homunculus, it's master will be taken. Also, the variable killerrid will be + set before running the script to specify who delivered the final blow. If + the killerrid matches with the script attached player, you can be sure your + player did the final blow to the mob, otherwise, the attached player is who + did the most damage to the mob. [Skotlex] +2006/10/19 + * Cleaned up the log.c file. [Skotlex] + * Fixed log_chat not recording anything if the server is compiled in SQL + mode and sql_logs is turned off (it should then record to a plain txt file) + [Skotlex] + * Fixed SG_FRIEND, it should be triggering when Monks do Combo Finish (not + triple blows), and the trigger rate increase should be based on your known + level of SG_FRIEND, not TK_COUNTER. [Skotlex] + * Phantasmic arrow now knockbacks even if it misses. [Skotlex] + * Adjusted the way Monk combo times work. The combo time is now always + 300ms (adjusted by combo_delay_rate) which takes effect inmediately AFTER + your current skill's canact-delay (which is why the particular skill delays + were moved to skillcast_db) [Skotlex] + * Modified skill_delayfix so it performs the can-act reduction from agi/dex + for combos there. [Skotlex] + * Modified pc_steal_item so that it behaves more closely to the way it does + on Aegis. [Skotlex] +2006/10/18 + * Added a overflow check when calculating party exp share. [Skotlex] +2006/10/16 + * Adjusted UTSUSEMI/BUNSINJYUTSU so that they block range/melee weapon + attacks and only melee misc attacks. This isn't 100% correct, but it's a + better approximation to the way these skills behave. [Skotlex] + * Emergency call &16 (disable skill from nowarpto maps) will now NOT block + Emergency Call if that map is also a gvg-castle map. Makes it safe to turn + on this option to prevent usage from special maps (like Lhz3) without + crippling the skill during WoE. [Skotlex] + * Applied most of Mpeg's work on Ninja Skills. For information see: + http://gpegon.free.fr/ea/ninja_10-15-06_mpeg.txt [Skotlex] + * When reinvoking a combo-time, the previous combo time will be terminated. + This could fix the ongoing difficulties pulling off Monk combos. [Skotlex] + * Fixed Esma-state not ending after casting it. [Skotlex] + * Fixed @hominfo displaying intimacy on a 1/10k scale. [Skotlex] +2006/10/14 + * Homun info window to show crit value. As default, homun does NOT crit, + as monsters do not crit. This is purely for display purpose for players + to identify their homon's luk value. [Vicious] +2006/10/13 + * Base attack for non players is now calculated as str + [str/10]^2 (it + does not has +dex/5+luk/5 which players do have) [Skotlex] + * Fixed the char-sql server trying to read the gms off a "gm_db" config + setting stead of "login_db" [Skotlex] + * Corrected Throw Arrow/Musical Strike's damage formula [Skotlex] + * Altered Trick Dead. It doesn't prevents skills from being casted on you + now, but damage-based skills will do no damage. [Skotlex] + * Made the battle_config.attack_attr_none apply to pets when using the + "fixed damage" pet skill scripts. [Skotlex] +2006/10/12 + * made @killmonster make the mobs drop items again. [Skotlex] + * Added a temporary message when Angel of the Sun, Moon and Stars trigger + so you know it triggered. [Skotlex] + * When slaves_inherit_speed is set (which is also the default), homun will + have the same speed of their master when spawned. [Skotlex] + * When using Hatred and you already have a hate target, your current hate + target is displayed now. [Skotlex] +2006/10/11 + * Cleaned up the char-server code when the last point of a player is not + found. First it'll check if there's any mapserver online, and then, if + there is, it'll look for the major cities. If this fails, then the player + will be told server is closed instead of trying to send him to a "random + map". Will fix the char-server printing the misleading message "map + server not found, sending to major city" when in reality there just + aren't any map servers connected. [Skotlex] + * Corrected the mob damagelog structure so that you can't exploit it by + switching characters. [Skotlex] +2006/10/09 + * Fixed crash when char-server sends to a "random" map-server online on + connect. Thanks to TheUltraMage for pointing it out. [Skotlex] + * Should have fixed being petrified not reducing your defense and + increaseing your mdef. [Skotlex] + * Fixed SC_NOCHAT printing the "skills are now available" message twice on + natural expiration. [Skotlex] +2006/10/08 + * Updated sql files [Playtester] +2006/10/06 + * Updated Land Protector to block absolutely every land-based skills with + the exception of Encores/Dances. [Skotlex] + * Disabling status abnormalities will now reset a mob's target. [Skotlex] + * Mob morphing also resets their target now. [Skotlex] + * Monk combos no longer can ignore skill delay (delay skill for all their + combo-related skills is ASPD) [Skotlex] + * Now you can trade while in a chatroom. [Skotlex] + * Fixed homun-txt reading when the file has DOS line-type delimiters (\r\n) + [Skotlex] +2006/10/05 + * skill_blown will now trigger on-touch npcs on the landing tile. [Skotlex] + * Max trade distance has been reduced from 5 to 2. [Skotlex] + * Undisguising will now resend the cart-contents. [Skotlex] + * Added function npc_unload_duplicates(), it unloads all npcs that are a + duplicate of the passed one. For use with @unloadnpc to prevent crashes + when you unload the npc that has duplicates. [Skotlex] +2006/10/04 + * Bowling bash now always hits twice regardless of situation. [Skotlex] + * Added an underflow check to prevent sending to the client negative mdef2 + value (for Frenzy'ed characters) [Skotlex] + * Modified pc_jobchange so that it automatically removes + peco/falcon/cart/homun if the new job you are changing to does not possess + the required skill for them. [Skotlex] +2006/10/03 + * Fixed a possible crash with @reloadmobdb due to pet loot timers. + [Skotlex] + * Fixed a possible crash and a memory leak on the login-SQL server when + parsing unban requests. [Skotlex] + * Renamed setting delay_dependon_dex to delay_dependon_agi, the delay of + skills is reduced now (when enabled) by AGI instead of DEX, which makes a + lot more sense than DEX. [Skotlex] +2006/10/02 + * Modified item-granded status resistance reduction to behave as explained + by Vicious (Ragnarok Monthly magazine) [Skotlex] + * Added the opt3 values to Eske [Skotlex] + * Fixed the txt->sql converter only saving the very first character + permanent variable. [Skotlex] + * Fixed the txt->sql converter saving account-wide variables as + character-wide ones. [Skotlex] + * Renamed nopenalty mapflag to noexppenalty. Using nopenalty will turn + on/off both noexppenalty and nozenypenalty now. [Skotlex] +2006/10/01 + * Removed the speed adjustment per level of Increase/Decrease Agility + [Skotlex] + * Fixed humunculi skill exploit, thanks to mr.rkit [Lupus] +2006/09/30 + * Rewrote the txt->sql converter. It now links directly to the char server + files so that it should get auto-updated with any code changes in the + later. [Skotlex] + * The converter will now also convert: account-wide variables, parties, + guilds, guild storage and guild castles. At this point the only two things + not converted are login-server-wide account variables (##, they belong to + the login converter) and homunculus (the SQL save function is messy and + doesn't lends itself to be integrated with the converter the way all the + other functions are). [Skotlex] + * misceffect2 will no longer cause the effect on top of the source object + when it is the fake npc. [Skotlex] + * Added check so that Frost Nova doesn't hides hitting animation on + targets. [Skotlex] + * Added the missing brackets around the trade logs condition check, thanks + to Coltaro. [Skotlex] +2006/09/29 + * Spurt state will now trigger on Soul Linkers as well. [Skotlex] + * Added a check un unit_run when unit_walktoxy fails. Should fix running + getting you stuck sometimes when running on diagonals near obstacles. + [Skotlex] +2006/09/28 + * Merged the necessary changes to make the script engine support negative + constants (db/const.txt). Thanks to Rayce (from jA) for the code. [Skotlex] + * Cleaned up the skill.c code to take into account when skill_unitsetting + returns null (skill failed), fixes a possible crash with Wand of Hermode + [Skotlex] +2006/09/27 + * Cleaned up status_get_party/guild_id, it should also fix a possible crash + when invoking such a functio on a masterless pet. [Skotlex] + * Sharp-Shooting will now display a skill animation. [Skotlex] + * The no_spawn_on_player setting will now also work for static mobs, but + only if the setting is set to 100 or higher. [Skotlex] +2006/09/26 + * Yet again messed with the packet sent during a splash attack, but this + time taking into account the packets that eA was using some many revisions + ago. Tests are needed to see if Magnum Break/Grimtooth don't spam the skill + animation anymore, and to see if GrandCross didn't break it's animation as + well. [Skotlex] + * Added function skill_dance_switch which handles converting overlapping + song/dances to dissonance/ugly dance. It should make the overlapping area + now behave completely like the mentioned song/dances (taking into account + interval and target type changes). [Skotlex] + * Updated battle_check_target so that non-offensive skills cannot be used + on a homun except for the homun and it's master. [Skotlex] + * Steal zeny won't work on treasure chests now. [Skotlex] +2006/09/25 + * Added an ugly check so that Heal will display 0 when healing a berserked + character (and it will again display full heal amount when healing a player + who's at full life) [Skotlex] + * Disabled again client-self-muting since it's causing too much trouble. + [Skotlex] + * Merged FlavioJS's script patch which should fix stuff like "mes ();" + causing crashes. [Skotlex] + * Item group reading will now complain when a line doesn't has enough + fields. [Skotlex] + * Fixed #baselevelup adding instead of substracting status points when used + with negative levels. Also made it reset your stats if there wasn't enough + to substract from. [Skotlex] + * Applied FlavioJS's suggestion of expanding WFIFOPOS to also take the + direction. This had the side effect of fixing the direction missing from + the mob spawn packet, which explains why all npcs face north when you are + within sight while doing a @reloadscript. [Skotlex] + * Changed the order of packets in TK_HIGHJUMP, may fix the reports of + getting stuck when jumping into a warp. [Skotlex] + * Changed a bit the code of marionette control, where a redefined local + variable may be the cause of mob-targetted Marionette Control stacking + stats up. [Skotlex] +2006/09/24 + * When the code auto-guesses that a skill should require ammo, it will + accept any type of ammo for using it instead of only arrows. Fixes Magnum + Break usage on Gunslingers. [Skotlex] +2006/09/22 + * Probably fixed a signed/unsigned mismatch warning on the new socket code. + [Skotlex] + * Fixed the "map server claims to have char online, but this other map + server also has it tagged as online" message triggering in some cases where + it shouldn't. [Skotlex] + * Fixed some maps in db/mapindex.txt being under the wrong id and added comments + so this will not happen again. [Zephiris] + --- ATTENTION! --- + People running TXT servers will have to tell their players to redo their /memo + points since the map ids of the old file were wrong. +2006/09/21 + * Fixed a bug on "select" when skipping empty entries when the selected + entry is the last. [Skotlex] + * Improved a bit RFIFOFLUSH as suggested by Harbin. [Skotlex] +2006/09/20 + * A mob's HP is set temporarily to 0 before invoking it's on-death script, + prevents said scripts being able to "rekill" the mob indefinitely (if stuff + like killmonster is used within) [Skotlex] + * Some small cleanups in chat.c [Skotlex] + * Fixed party_sub_count (TK_POWER) failing when the idle_no_share setting + was disabled. [Skotlex] + * Enabled Star Gladiators and Soul Linkers to do /doridori [Skotlex] +2006/09/19 + * Fixed nocommand mapflag causing the "you can't use commands on this map" + message to trigger one very single chat, instead of only for actual @/# + command invocation. [Skotlex] + * Added support for skipping empty string menu entries for the select() + command (just as `menu` has it already) [Skotlex] + * Fixed pc_set_hate_mob letting you place mobs on any of the three + positions regardless of size [Skotlex] + * The double continuation error will now display both scripts that + triggered it. [Skotlex] + * Loading the storage from the char-server will fail if player is already + tagged in final save state. [Skotlex] + * Removed setting ban_spoof_namer, sending invalid global-talk packets will + now just kick the player out of the server. [Skotlex] + * Added echoing messages back to self when using @/# commands on whispers + and party/guild messages, to prevent the client from muting yourself. + [Skotlex] + * Fixed some gcc4 warnings [Toms] +2006/09/18 + * Fixed Spider Web fire damage bonus. [Skotlex] + * Made Global chat always reply back to you even on @/# commands, this + prevents the client from muting yourself due to "hack". However, this same + fix isn't easily applicable to @ commands invoked from whispers or + party/guild messages, those are still pending. [Skotlex] + * Merged Meruru's update to socket.c, which includes a rewritten parse + function, which should hopefully be more efficient than the previous code. + [Skotlex] + * The new code includes support for two config settings + (packet_athena.txt): frame_size, which can be used to alter the logic + packet-size allowed by the code, and mode_neg, which when set to yes, sets + TCP_NODELAY on all connections (defaults to yes). [Skotlex] + * High-Jump is usable everywhere now, except that on maps where it + previously failed, now will just make you jump in place. [Skotlex] + * Fixed TK_RUN as per packets provided by AuronX. [Skotlex] + * Moved the equipment/card resistances to status ailments outside of + status_get_sc_def, so that they are applied only to rate, not duration. + [Skotlex] + * Modified the Asura code (again), hopefully movement sprite issues are + fixed now [Skotlex] + * @reloadscript scripts will no longer eliminate mobs with no respawn data. + But watch out for possible bugs (I think someone mentioned 1 extra + treasure box will spawn when you use it? This needs testing!) [Skotlex] + * Made speed_add_rate a linearly stacking increase. [Skotlex] + * Corrected a possible overflow when using show_mob_info to display the + mob's up as a percent. [Skotlex] + * Corrected the documentation for checkoption/checkoption1/checkoption2 + [Skotlex] + * Reenabled client requesting to self mute, as the whole knockback packet + issues of the past which were causing players to mute themselves when being + knockback is no longer there. [Skotlex] +2006/09/17 + * Fixed NPC_INVISIBLE's cloak ending after attacking once. [Skotlex] + * Fixed SG_FUSION being castable without Soul Link state. [Skotlex] + * Moved the item-use restriction SC checks from clif.c to pc_use_item, + fixed Gravitation blocking potion usage on it's area of effect. [Skotlex] + * Sphere Marines and Summoned Flora are now inmune to class-changing. + [Skotlex] +2006/09/16 + * Added monster_ai&256. When set, a monster will pick a random starting + position to begin checking versus it's skills, otherwise, it will always + begin checking from the beginning. [Skotlex] + * Fixed the status change duration reduction equation was was totally + wrong, thanks to k3dt [Skotlex] +2006/09/15 + * Now mobs won't do a distance check to lose their target on every ai + iteration, but only when they finish walking (unless you set monster_ai&1) + [Skotlex] + * The chase distance before a mob gives up following a player has been + increased from view-size (range2) to min-chase (range3). [Skotlex] + * Reverted the Summon Flora change where all plants were being summoned in + one go. [Skotlex] + * Moved the weapon repair effect to where it belongs (after successfully + repairing an item) [Skotlex] + * Added config setting "friend_auto_add" (battle/player.conf), if set, when + you accept someone as your friend, both characters will show up on each + other's friend list. [Skotlex] +2006/09/14 + * Changed Extremity Fist's code to make you actually walk past your target, + which displays a much more correct "animation" for the skill. Thanks to + HiddenDragon for the information and code. [Skotlex] + * Updated the item_db search functions so that when returning the + dummy-item, it first updates the nameid to match the requested one, this + prevents pc_additem later on giving you an item with ID 500 instead of the + ID requested. [Skotlex] + * Added a clif_skill_nodamage packet when using Repair Weapon, just to see + what happens. [Skotlex] + * Likely fixed "half" of the alliance being saved, which ends up in guilds + that can attack another, but not viceversa. [Skotlex] + * Added deleting of saved Status changes on character delete for the + Char-TXT server. [Skotlex] + * Fixed the can-act delay never being checked when requesting to use + Homunculus Skills. [Skotlex] + * Fixed warmth skills draining SP of the target, not the caster. [Skotlex] + * When TK_DODGE triggers, it will no longer delay your attack or movement. + [Skotlex] + * Estimation /Sense/ whatever will no longer hide the vit bonus to mdef2, + as reported by Playtester. [Skotlex] + * Updated Summon Flora to summon the max number of possible plants on one + cast. It will consume as many bottles as monsters summoned. Also cleaned up + the function to be usable by non players. [Skotlex] + * Shadow Jump no longer goes over walls. [Skotlex] + * battle_calc_gvg_damage will be invoked in gvg maps regardless of woe + time. [Skotlex] + * NPC_MENTALBREAKER now zaps matk*lv SP based on observations by Tharis. + [Skotlex] + * md->class_ will be changed on mob-class-change to fix all class-change + related bugs. On respawn, the spawn data will be used to revert to the + original class. [Skotlex] + * Improved the pet skillbonus timer for "eternal bonuses" cases where the + bonus delay is 0. [Skotlex] +2006/09/13 + * SC_CHANGE cannot override itself anymore. This fixes being able to + "recast" the skill while it's still active to lengthen the duration AND + reheal the target. [Skotlex] + * Changed a bit the dnsbl lookup in the login servers to make it faster. + [Skotlex] + * Moved the pc rate modifiers from items + (hp/sp/matk/hit/flee/cri/flee2/def2/mdef2/def/def2/speed) from + status_calc_bl_sub_pc to status_calc_pc, as it simplifies code vastly, and + also fixes Osiris card not applying to said bonuses. [Skotlex] + * Fixed pc_damage_delay_rate not working, thanks to Orn. [Skotlex] + * Modified the nocommand mapflag so you can specify the GM range that is + blocked from using commands (eg: "prontera.gat mapflag nocommand 40" + disables commands to characters in the GM range 0~39) [Skotlex] + * Modified the char-server TXT whisper system to use the online_db to know + to which map server forward whispers, instead of just sending the whisper + to every map server. [Skotlex] + * Readded the setting TCP_NODELAY on socket.c to see if it fixes the + walk-lag issue. [Skotlex] +2006/09/12 + * Modified the login SQL server so that case insensitive lookups use "where + name = BINARY 'name'" instead of "where BINARY name = 'name'", since this + way the name index should be used, and performance will no longer be + heavily affected. [Skotlex] + * Modified main.sql to add 4 missing indexes (thanks to ErkDog): char_id on + the tables memo/friends, and online/name on the char table. Added + upgrade_svn8728.sql to add these indexes to already existing tables. + [Skotlex] + * Updated convert_engine.sql to use TYPE instead of ENGINE to be compatible + with Mysql 4 installations. [Skotlex] + * Moved the morph restrictions from skill_additional_effect to + mob_class_change, so that SA_MONOCELL will not convert clones, emperium, or + treasure boxes. [Skotlex] + * Fixed 'range' might be used uninitialized warning [Toms] + * Added Jaguar's sql script to convert all tables to MyISAM. It's located + in sql-files/convert_engine.sql WARNING: Using MyISAM is much faster than + InnoDB, but you are strongly recommended to backup your database before + switching engines since we don't know if eA is fully coded to work + correctly with MyISAM yet. [Skotlex] + * Added manual deletion of sc_data entries when deleting a character + (char-SQL) [Skotlex] + * Updated main.sql to use pure MyISAM tables, removed all foreign keys. + [Skotlex] + * Updated battle_switch to use strncmpi instead of strcmpi, it makes it so + using "yessir" will match "yes", this is actually needed because if you set + a config setting to "yes " (notice the trailing space), then the map config + engine fails to read it right, and will set the config setting to 0 (no). + [Skotlex] + * Some corrections to hate_mob cleanup when triggering the Angel stuff. [Skotlex] + * Updated the show_mob_info setting to add another space to the separating + pipes, so that each field is separated by " | " instead of " |". [Skotlex] + * Homunculus intimacy will go back to 500 on evolution. [Skotlex] + * Baphomet splash damage will now hit nearby enemies regardless of flee + (but the initial attack still has to connect for the splash to trigger) + [Skotlex] +2006/09/11 + * Modified set_nonblocking and setsocketoptions in socket.c, using eApp's + code as reference. Hopefully should improve performance somewhat. [Skotlex] + * Added a comment explaining what a comment is to login/char/map config + files, as well as the main script config file. [Skotlex] + * Modified SG_FEEL so that it works the same way that in Aegis + (packet-wise) [Skotlex] + * Added a comment to explain how to "remove" a string variable from the + msg_athena entries. [Skotlex] + * Summoned and slave mobs won't show up on @showmobs anymore. [Skotlex] + * Moved Spider Web damage bonus from battle_calc_damage to battle_attr_fix, + so that damage will be doubled based on the actual attack element. + [Skotlex] + * Adjusted autospell cards to trigger only on physical weapon attacks. + [Skotlex] + * Adjusted a bit the heal code, it should now show either the full heal + amount, or 0, depending on whether the target was healed at all or not + (this also means it shows 0 if you try to heal a full-life character.. but + it's the closest I've gotten to make it display 0 on Berserked chars) + [Skotlex] + * Memorize will be consumed even on instant cast spells now. [Skotlex] + * Berserk will end now if hit and remaining hp is less or equal to 100. + [Skotlex] + * Guild Aura will be removed on sc-load to prevent Guild Masters from + getting that bonus from the old implementation. [Skotlex] + * Added D-Kalck's fix of the TXT -> SQL converter [Playtester] +2006/09/10 + * Thanks to KarLaeda, added missing function in @showmobs [Lupus] + - Script function 'query_sql': In the TXT version it doesn't fill the array + and always return -1. Added for scripts compatibility. Your scripts + won't crash in TXT version. They can work it around. + I suggest we need a function getversion() + * Updated item_db.sql and mob_db.sql [Playtester] +2006/09/09 + * Added a crash protection in case mapfreeblock unlock tries to free a null + pointer. [Skotlex] + * Moved perfect_hiding from state to special_state, so that it clears out + when you remove your pet. [Skotlex] + * Probably fixed the Taekwon Rest skills. [Skotlex] + * Fixed a npc-timer memory leak on npc_unload ("[Warning]: ers_obj_destroy: + X entries missing, continuing destruction. Manager for entries of size + 16.") [Skotlex] +2006/09/08 + * Unified the rest and ganster paradise code into a single function. + [Skotlex] + * Moved the Happy State trigger to the regen function, it now triggers at + the same time SPTIME does. [Skotlex] + * Cleaned up SG_HATE, hope it works now. [Skotlex] + * Removed sg_miracle_skill_duration, replaced it with + sg_miracle_skill_min_duration and sg_miracle_skill_max_duration, to specify + a range for the duration of the skill. [Skotlex] + * Added upgrade_svn8675.sql in case, for some reason, your guild table + still has the emblem_data field as a 'blob' with "NOT NULL" specified. + [Skotlex] + * Fixed alliance/opposition making not cancelling out map-server-side when + the guild already had max number of alliances/oppositions (thanks to k3dt) + [Skotlex] +2006/09/07 + * Fixed SC_BERSERK setting Hp to 100 when dispelled by unnatural means (eg: + wand of hermod) [Skotlex] + * Cleaned up the doridori parse clif function. [Skotlex] + * Merged some of mpeg's work on NJ skills [Skotlex] + * Removed the Warmth "stacking" code. [Skotlex] + * Added back the effect of /doridori to skill-SP regen [Skotlex] + * Implemented a rough version of Angel of the Sun/Moon/Stars, it has a low + chance of triggering on doridori-boosted SP-regen events. However, it has + no client-side messages yet (need to add these in) [Skotlex] + * Added sg_angel_skill_ratio to specify rate at which the Angel skill + triggers. [Skotlex] + * Added unit_cancel_combo which takes care of ending a combo time and + resuming normal attack 'inmediately' [Skotlex] + * Cleaned up some the SG_HATE code, you can't change hate targets anymore. + [Skotlex] +2006/09/06 + * Fixed the memset in status_calc_pc, corrects some mysterious bugs such as + item-drop bonuses suddenly not working anymore. [Skotlex] + * Corrected SC_INCREASEAGI and SC_DECREASEAGI speed-change formula. + [Skotlex] + * Fixed Aex Aeterna ending on Soul Breaker's first half. [Skotlex] + * Applied Orn's modification on speed increases/reductions with increase/ + decrease agi [Toms] +2006/09/05 + * Removed setting mob_show_hp, it's been replaced now by mob_show_info, + which can be used to specify what kind of info should be displayed from a + mob. Current options are two different formats for Hp display, and current + level (monster.conf). [Skotlex] + * Fixed Signum Crucis Def reduction being 10+2*lv% instead of 10+4*lv% + [Skotlex] + * Applied the Ultra Mage's suggestion to have the map server strip trailing + spaces/comments from the config files. It will also now print out when an + unknown config setting is found. [Skotlex] + * Fixed status change resistance not being invoked at all for pretty much + all cases. [Skotlex] + * Corrected SC_INTRAVISION not starting. [Skotlex] + * Fixed crash when attempting to read a Label as a string on a script + (thanks to End of Exam) [Skotlex] + * Fixed possible crash when changing a chat-room's owner (thanks to End of + Exam) [Skotlex] + * Fixed dispell removing SC_NOCHAT [Skotlex] + * Small fix which should correct skill_attack damaging hidden characters + when it shouldn't. [Skotlex] + * Fixed connect_until field being a smallint rather than int in the login + table (upgrade with upgrade_svn8630.sql) [Skotlex] +2006/09/04 + * Fixed crash when using Adaptation during an Encore. [Skotlex] + * Should have fixed manner being reset to 0 on logout while muted. + [Skotlex] + * Removed status_get_sc_tick, duration and chance are now both handled by + status_get_sc_def (this means status change duration and success rate + both will always follow the very same formula) [Skotlex] + * Fixed mob-kill experience getting screwed up when characters who did + damage die/logout at the moment the mob dies. [Skotlex] + * Should have fixed "sleep", thanks to Lance for figuring out the error. + [Skotlex] + * SC_REFLECTSHIELD will now be passed to devoted characters at cast-time. + [Skotlex] + * Added a check to make a mob's level 1 if the read level from the db is + less than it. [Skotlex] + * status_calc_misc will now be invoked in status_calc_bl even on the first + call, since status could have gone up due to skill bonuses. [Skotlex] + * Moved max HP/SP calculations to before invoking status_calc_misc + [Skotlex] + * Simplified distance and check_distance to use "aegis" methods (greater of + dx/dy = distance), there's a new define in map.h called CIRCULAR_AREA, when + set, the previous method is used, and "for each in range" calls will also + check for distances, making most ground skills and battle system use real + circles instead of squares. [Skotlex] +2006/09/03 + * Fixed SC_BERSERK's no regen penalty lasting pretty much forever. + [Skotlex] +2006/09/02 + * SC_REGENERATION's val4 now holds the RGN flag of what is blocked rather + than blocking all types of regen. [Skotlex] + * LK_BERSERK will now only block natural regen on state-end. [Skotlex] + * SC_EXTREMITYFIST/SC_DANCING/SC_EXPLOSIONSPIRITS will only block natural + sp regen and not skill regen [Skotlex] + * SC_REGENERATION blocking will be cancelled on logout now. [Skotlex] + * Corrected SCB_LUK not updating SCB_BATK as well. [Skotlex] +2006/09/01 + * Corrected script_commands description of getequipid, it returns -1, not 0 + on fail. [Skotlex] + * Fixed the mob-id check during pet_db loading, it will also now print when + a pet is not loaded due to having an invalid mob class specified. [Skotlex] + * The "delete_timer error/no such timer" report will now print the related function [Toms] + * The Clearing unused stack report will now print the related NPC [Toms] + * The duplicate npc report will now print the related file name [Toms] + * Added config setting "partial_name_scan", which specifies whether @ given + names should use a partial string lookup or absolute name lookup. Defaults + to no (gm.conf) [Skotlex] + * Expanded status_calc_misc so it may also calculate the batk of characters + as well as their regen data (if they have it) [Skotlex] + * Fixed a memory leak when using charsave_method:1 [Skotlex] + * Soul Breaker will now be affected by Lex Aeterna on both parts of the + attack. [Skotlex] + * Status changes with no skill and no SCB* data will now go through if they + have an SI* icon. This should fix SC_MIRACLE [Skotlex] + * Reverted switching a mob's adelay/amotion when the later is longer than + the former, now both get updated to amotion. [Skotlex] +2006/08/31 + * Moved the intimacy penalty of HFLI_SBR44 and HVAN_EXPLOSION to + skill_counter_additional_effect [Skotlex] + * Simplified skillnotok_hom by using an invocation to skillnotok [Skotlex] + * Hopefully fixed BD_ADAPTATION [Skotlex] + * Homun won't lose any intimacy on death now. [Skotlex] + * Homun will be saved together with the master now (as long as the homun is + active) [Skotlex] + * Modified the error reporting in map_freeblock_unlock so that when there's + an error, the reported line number is the file's linenumber plus the + object's type *10000. This is for debug information to help track down the + already-freed error. [Skotlex] + * pc_adopt will now preserve the kid's job/job-level/experience. This means + that if you adopt a Swordman level 45, it will become a baby-swordman level + 45, with the exact same exp as before. [Skotlex] + * Fixed new mob's name not sent to the client when the mob is morphed [Toms] + * Added setting attack_walk_delay which specifies whether a character + should (or not) be able to move inmediately after starting a normal attack + (battle.conf). Defaults to 0 since that's what Aegis uses. [Skotlex] + * Fixed @summon's delete timer being screwed up. [Skotlex] + * Cleaned up a bit the summon script command. [Skotlex] + * Fixed the clone script command's delete-timer being screwed up. [Skotlex] +2006/08/30 + * Skill required-state will now only be checked on cast-begin, not + cast-end. [Skotlex] + * Added a check in status_calc_pc to prevent player rate adjustments from + from going below 0. [Skotlex] + * Removed sending normal-damage packets instead of skill packets for + splash-damaged skills, since... well, that's how Aegis does it. [Skotlex] + * Updated HLIF_CHANGE to work as explained by Tharis -> It now adds 30*lv + vit and 20*lv int, is dispelled on warp, and can-act delay is 5+5*lv + minutes. Hp/Sp is no longer set to 10 after a forced expiration. [Skotlex] + * Fixed up char-sql compilation. [Skotlex] + * Added a message to @clearweather stating when climate changes will + dispel. [Skotlex] + * Corrected @hidenpc saying that it's command name was "@npcoff" [Skotlex] + * Updated itemdb reading on the char-sql server so that it reads both + item_db and item_db2 files (totally untested yet) [Skotlex] +2006/08/29 + * Added printing out whenever the irc-module attempts to connect, to debug + whether the map-server lag is due to this or not. [Skotlex] + * Mobs will now always chase players using hard-path seeks. [Skotlex] + * monster_ai&1 now only signals whether mobs should update their target + cell while chasing more frequently (rather than being state-driven like + Aegis) [Skotlex] + * Changed the defaults of view_range_rate and chase_range_rate to 120 to + aproximate better Aegis's view ranges (which are square areas and not + circles) [Skotlex] + * Applied Mpeg's work on GS [Toms] + ( http://gpegon.free.fr/ea/gunslinger_08-29-06_mpeg.txt ) + * Fixed a syntax error in @showmobs [Toms] + * Added @showmobs. It shows selected mobs on your mini-map (excluding + mini-bosses & MVP) thanks to KarLaeda for the command [Lupus] +2006/08/28 + * Modified the dancing code and Moonlit Petals in particular, so that it is + treated as an ensemble like any other, it will just knockback people when + they step into it. [Skotlex] + * The memory leak reports will now print out in the logs also the revision + they belong to. [Skotlex] + * Cleaned up the scriptable npc-shop code, it should be crash-proof now. + [Skotlex] + * Added TK level-up buffs to SG too, and extended them to 10 min [DracoRPG] + * Added "Barefeet Mastery" effect to TK_RUN (thanks Tharis for both) [DracoRPG] + * Changed the produce_db format, now there's a skill-lv column right after + the skill-id column to specify required skill-level to craft this item. + [Skotlex] + * Modified the skill produce_db code to take into account the new skill-lv + requirement. [Skotlex] + * Fixed exp bonuses applying twice for the job-exp [Skotlex] + * @reloadbattleconf will now also update the ragsrvinfo table on the + char-server. [Skotlex] + * Fixed homun hp/sp growth rates stacking with HP/SP passive increasing + skills. [Skotlex] +2006/08/27 + * Fixed undefined reference to 'malloc_set' in log.c [Toms] + * Updated svn-revision reading, now it can read the new svn file system [Toms] + * Fixed a bug with homunc which could spawn on a non-walkable cell [Toms] +2006/08/26 + * Optional macro MEMSET_TURBO for faster low-level memory initializations. [Lance] + * Small bug fix in read_homunculus_expdb (a warning was always displayed) [Toms] + * Small adjustment on the mob_ai code which could fix mobs not chasing you + if you hit them from the maximum possible diagonal distance. [Skotlex] +2006/08/25 + * Cleaned some the skill unit removal added flag so that it signals whether + the skill is being force-removed, or it has "naturally expired". [Skotlex] + * The following skills will display a normal attack animation now: + NPC_WATERATTACK, NPC_GROUNDATTACK, NPC_FIREATTACK, NPC_WINDATTACK, + NPC_POISONATTACK, NPC_HOLYATTACK, NPC_DARKNESSATTACK, + NPC_TELEKINESISATTACK, NPC_SPLASHATTACK + * Skills that require a weapon and consume spirit spheres will no longer be + auto-tagged to require ammo. [Skotlex] + * Now MISC skills with delay 0 will also use the attack delay (if the skill + is tagged to do damage) [Skotlex] + * Added script commands roclass/eaclass to enable scripts to access eA's + job format. Read script_commands.txt and ea_job_system.txt for a more + complete explanation of how this job system works. [Skotlex] + * Added a flag to skill_delunitgroup, skill_delunit & skill_unit_onlimit. + If 1 is passed, it will avoid UNT_WARP_ACTIVE to be transformed in + UNT_WARP_WAITING and will destroy it. [Toms] + ( To avoid such crash : http://www.eathena.ws/board/index.php?showtopic=114102 + when the code need an empty slot and the oldest one is UNT_WARP_ACTIVE ) +2006/08/24 + * Little cleanup on homunc's code [Toms] + * Modified @reloadmobdb & @reloadskilldb to reload homunc's db too [Toms] + * Now when a mob's adelay is set to be less than the amotion, both values + will be swapped (this is an attempt to understand how those mobs actually + work on aegis) [Skotlex] + * script command "isrefine" will no longer return always false for equip + positions above 6 (this has not been needed since the addition of the + refine column to tbe item_db many months ago) [Skotlex] + * Added NPC_CRITICALSLASH to the list of skills that display as a normal + attack. [Skotlex] + * Reverted the previous change, changed the pet capture code to try to + capture a mob based on their view class rather than actual class. + [Skotlex] + * Fixed the md->class_ variable not being updated when a mob's class is + changed. [Skotlex] + * Added setting clear_skills_on_warp to specify when a character's + land-based skills are deleted when the caster changes maps. Defaults to all + types. [Skotlex] + * Should have fixed Brandish Spear not passing the flag to skill_attack, + causing it to do miserable damage. [Skotlex] + * Warp Portal will no longer be removed when caster steps through it (this + is left to the new clear_skills_on_warp setting) [Skotlex] + * Cleaned up status_percent_change to switch equations when the target has + high hp to prevent overflows, also it will directly take hp/maxhp when a + rate of 100 or higher is passed to prevent calculations. [Skotlex] + * Traps and Land Elemental fields are no longer automatically removed on + map change (handled now by clear_skills_on_warp) [Skotlex] + * traps_setting &2 no longer does anything (handled now by blah blah) + [Skotlex] + * Applied some change from mpeg on Ninja Skills [Toms] + * Put HVAN_Explosion based on max_hp instead of current hp [Toms] +2006/08/23 + * Fixed mob_clone_spawn completely ignoring the mode variable. [Skotlex] + * Fixed Energy Coat reducing and consuming more than it should when you + have 100% SP [Skotlex] + * Cleaned up getmapxy script function, also added support for type 4 so + that it returns a player's homunculus position if such exists. [Skotlex] + * SC_ARMOR_ELEMENT looks like gone away from status_change_start since ... rev 6791. + Try to reimplement it. [Toms] + * Fixed HVAN_EXPLOSION [Skotlex] + * Frost Nova won't display a nodamage skill packet (still need to sort out + a way to fix the splash damaged packets) [Skotlex] + * Fixed a possible SIGSEGV on buildin_maprespawnguildid if the map is unknown [Toms] + * Added debug on "Inifity loop" to know which script is making this loop [Toms] +2006/08/22 + * More fixes to the splash code. Kamaitachi and Sharpshooting should + display correctly now. [Skotlex] + * Fixed a crash on the mobspawn script command. [Skotlex] + * Made SC_FLEET increase batk as well as watk. [Skotlex] + * Fixed gcc warning [Toms] + * Fixed AM_REST not closing the homunc status window [Toms] + * Fixed SC_NEN according to Mpeg [Toms] + * Added a ShowStatus("Terminating...\n") on login-server_sql [Toms] + * Some corrections to make Tatami Gaeshi work correctly. [Skotlex] + * Fixed SBR44 doing 100% more damage than it should. [Skotlex] + * Some more work on the splash skill code. Now splash-damaged enemies + should show no animation at all, just the damage-number, while only the + targetted character should still display the full skill animation. + [Skotlex] + * Modified the homun-txt file-save format to separate the name from the + rest of fields with tabs (like character saving does), this may fix homun + save/loading when using non-latin characters on the name, but be warned + that it also means the previous homun-data files are lost! (unless you + replace the comma before the start of a name with a tab) [Skotlex] + * getnameditem will now also work on stackable items [Skotlex] + * Corrected battle_calc_weapon_attack so that all skills ignore your + left-hand weapon, and that the Katar's double-attack damage bonus for the + offhand damage applies ONLY on normal attacks. [Skotlex] + * Fixed Resurrect Homunculus's % to 20*lv% [Skotlex] + * Added SQL update which should remove \' from guild names [Toms] + * Added option to disable character deletion of certain levels [Lupus] + check char_athena.conf for this option format +2006/08/21 + * Some more cleaning up of the splash skill code. Now the passed hit value + for the splash targetted mobs is 9 instead of 5, this allows multi-hitting + splash skills to display the number of hits correctly. [Skotlex] + * Fixed call homunc bug when the homunc was vapo and the master has change + of map [Toms] + * Fixed SQL-Guild Creation, guild name was escaped 2 times [Toms] + * Some cleaning of the splash skills. Updated skill-attack to enable again + passing of flag 0xF000 which signals that the skill level sent to the + client should be -1 (no skill name shouted). Should (hopefully) clear/clean + up a bunch of splash damage skill animation-related packets. [Skotlex] + * Homun saving won't cap hp/sp to max hp/sp since a homun can have higher + hp/sp than the one stated in the db (due to skill bonuses or status + changes) [Skotlex] + * Cleaned up some more the regen_data structure, so that + skill/sitting-skill related data is optional (since only players have it). + [Skotlex] + * Fixed AM_RESURRECTION, thanks to RockmanEXE for %HP values [Toms] + * Fixed HAMI_CASTLE, HAMI_DEFENCE & HLIF_AVOID [Toms] + * Adjusted Glittering's success rate to 20+10*lv% [Skotlex] + * Corrected isequipped() so that cards will not be tagged as "used up" + unless all the specified items were found. [Skotlex] + * Fixed a confusion in skill_attack using the src instead of dsrc for some + calls, which was causing some problems with the KAITE check from AoE + spells. [Skotlex] + * Fixed ASC_BREAKER's misc damage part not having the ignore-element flag + set. [Skotlex] + * Moved homunc battle conf from misc.conf to homunc.conf [Toms] + * Some cleaning in skill.c in regard to homun skills. [Skotlex] + * Madness Canceller now stacks with other aspd bonuses, just like Berserk + does. [Skotlex] + * Removed config setting "muting_players", and expanded the manner_system + config to specify how having negative manner (mute) affects a player (see + battle/misc.conf). [Skotlex] + * Expanded the pk_mode setting from no/yes to 0/1/2. 1 is normal pk_mode, + if 2 is used, it makes killing players give you a loss of 5 manner points. + [Skotlex] + * Fixed WS_WEAPONREFINE always failing when at less than job 50. [Skotlex] + * Fixed the Autosave routine not working when there's only one player + online. [Skotlex] + * Disabled command @rain since the client no longer supports it anyway. + [Skotlex] + * Fixed delitem not checking for the first slot's card, also optimized it + so that it doesn't checks on the other slots. [Skotlex] +2006/08/20 + * Added a check during mob_db loading so that the six basic stats, max hp + and max sp are never below 1, as this could cause crashes when using + certain skills. [Skotlex] + * Gravitation now only blocks the caster from using potions. [Skotlex] + * Corrected Madness Canceller letting you walk while the effect lasts. + [Skotlex] + * Splitted yet again ASC_BREAKER into a two-part attack. This time the + int-based damage is a MISC type attack, and gets reduced by skills as such. + [Skotlex] + * Fixed "int format, long unsigned int arg" warning [Toms] + * Fixed a warning when using cap_value(x, 0, x) on an unsigned value [Toms] + * Added clif_skill_fail for homunc to skill_castend_id & skill_castend_pos [Toms] + * Fixed homunc skill 8016 not considered as homunc skill [Toms] + * @useskill will now cause your homun to use the skill instead of you if + the skill is a Homun skill and you have an active homunculus. [Skotlex] + * Reduced the Success Chance of GS_FLING to 10+10*lv% (Playtester told me + that Vicious told him the chance was much lower like that) [Skotlex] + * Fixed some Homunc issues with HR servers (capping some values) [Toms] + * Added @hominfo command to obtain real values (not capped ones) [Toms] +2006/08/19 + * Fixed @homlvup bug [Toms] + * Fixed AM_REST & AM_RESU consumming SP if they fail [Toms] + * Fixed homunc spawning bug (they was spawned after an AM_REST + master warp for example)[Toms] + * Fixed GS_GROUNDDRIFT [Skotlex] + * Increased chance of GS_DESPERADO connecting to 20% [Skotlex] + * Fixed battle_calc_base_damage being called for the left hand even for + non-dual-wielding attacks. left-hand damage was being set to 0 later + anyway, so no exploit existed. [Skotlex] + * Moved the weapon_atk_rate bonus to battle_calc_base_damage so that it'll + apply correctly when dual-wielding different types of weapons. [Skotlex] + * Fixed job-mask 0x100000 in the item_db enabling Dancers/Bards to use the + items (0x80000 should be for them and 0x100000 should be currently unused) + [Skotlex] + * Fixed a possible sigsegv when deleting lif under Mental Change [Toms] + * Fixed HAMI_CASTLE [Toms] + * Fixed HLIF_CHANGE [Toms] + * Updated HLIF_BRAIN skill [Toms] + * Fixed homunculus intimacy on feeding [Toms] + * Added homunculus_friendly_rate battle config [Toms] + * Some compilation warnings fixed [Toms] + * Added skill's required item check on homunc skills [Toms] + * Add Condensed Red Potion as a required item for HLIF_HEAL [Toms] +2006/08/18 + * Little code cleanup on last fix [Toms] + * Fixed HLIF_HEAL healing the homunc instead of the master [Toms] + * Fixed HLIF_AVOID not increasing walk speed of master [Toms] + * Fixed the atk_rate (Turtle General Card) bonus not working on + dual-wielders. [Skotlex] + * Made HLIF_HEAL a self skill that auto-selects target to caster's master. + [Skotlex] + * Implemented SC_BLOODLUST and SC_CHANGE, cleaned up HLIF_CHANGE [Skotlex] + * Applied a correction to HVAN_EXPLOSION [Skotlex] + * Fixed Homun ASPD calculation being able to underflow and give you min + speed. [Skotlex] + * Added monster_ai&128 to make aggressive mobs ignore that behaviour of + always picking Homun targets above player targets regardless of who is + closer. [Skotlex] + * Fixed homun info packet being unable to display HP/SP correctly once the + values are above 32k. [Skotlex] + * Applied Mpeg's work on ninja [Toms] + * Fixed @homlvup [Toms] + * Added guild_aura (skill.conf) setting so you can specify when it works + and if it works on the guild-master itself. Defaults to working all the + time on everyone except GM. [Skotlex] + * Little code cleanup [Toms] + * Cleaned merc_hom_evolution to avoid free'ing/realloc'ing [Toms] + * Fixed "args of aFree is freed pointer" on Homunc deletion [Toms] + * Changed unit_free so that it receives which cleartype should be used when + the character is still on a map. Used this on status_damage so that mobs + that do not respawn when killed will properly display the death animation. + [Skotlex] + * Fixed Energy Coat consuming 10x less SP per hit than it should. + * Fixed signed/unsigned comparison issues with natural heal system [Toms] +2006/08/17 + * Vaporize will no fail when the homun is dead. [Skotlex] + * Corrected thhe double free issue that occurs when a homun dies and has no + intimacy left. [Skotlex] + * Fixed the charsave_method:1 saving/loading exp as signed ints rather than + unsigned. [Skotlex] + * Applied use of structure regen_data for a unified regen module. Natural + and skill-heal is handled by this structure, while sitting-skill-heal is + still player dependant (mostly because the other object types can't sit) + [Skotlex] + * Cleaned up the status calc code for homun by moving it from + status_calc_bl_sub_homun to status_calc_homun (where it should had always + been) [Skotlex] + * Updated SQL files [Playtester] + * Corrected map_random_dir algorithm [Toms] + * Fixed homunc natural heal and little code cleanup [Toms] + * Changed AM_CALLHOMUN Skill to spawn the homunc at 1 cell from his master [Toms] +2006/08/16 + * Fixed being unable to recast Adrenaline Rush to reset the duration + timers. [Skotlex] + * Cleaned up skill_get_range2 so that using range 0 for non-self skills + uses the caster's attack range. [Skotlex] + * Fixed AM_CALLHOMUN checking for an embryo when you have a vaporized + homun. [Skotlex] + * Spirit of Wizard will now consume an item 7321 each time it blocks + reflected magic. [Skotlex] + * Added script command jobname, retrieves a given's class name as per the + appropiate msg_athena.txt entry (this command should had been added years + ago) [Skotlex] + * Fixed null-pointer crash on Evolving a homunculus. [Skotlex] + * @produce now can make any kind of equipment [Skotlex] + * Made HLIF_AVOID and HAMI_DEFENCE cause the status change on both caster + and target. [Skotlex] + * AM_REST shouldn't be checking for a range now (since it's a self skill) + [Skotlex] + * Updated mob_ai so that mobs will use their rude-attacked skill when they + can't reach their current target. [Skotlex] + * Fixed the default txt config making pets be saved to the homun file + instead of to the pet file. [Skotlex] + * Now arrow-consuming skills where your main weapon is a whip or musical + instrument WILL count as arrow-type attacks, using the atk of the arrow and + all related bonuses. [Skotlex] + * Fixed some homun timer initialization code. [Skotlex] +2006/08/15 + * Applied multiple fixes which should take care of making homun save/load + work on TXT now. [Skotlex] + * Added Gatling Fever's batk bonus. [Skotlex] + * Some cleaning in status_damage which should prevent trying to free + already free'd pointers when unit_remove_map invokes unit_free (when + status_damage was going to invoke unit_free anyway) [Skotlex] + * Delete homunc's skills from sql when the homunc is destroyed [Toms] + * Homunc Timers should be disabled when the homunc is vaporized or dead an re-enabled on call/resu [Toms] + * Updated vc-project files to compile with the new int_homun files. + [Skotlex] + * Hopefully fixed the crash when using charsave_method = 1 [Skotlex] + * Moved s_pet structure from map_session_data to pet_data, this enabled the + removal of a few redundant values in the pet_data structure (name, class, + equip) [Skotlex] + * Cleaned up some of the pet related @/# commands, same for some script + commands. [Skotlex] + * Pet offensive skills who's inf value is self will be casted on the pet + now (for stuff like Grand Cross) [Skotlex] + * Added homun saving/loading support to char-TXT. Note that this is + completely untested, so it may be as good as broken. [Skotlex] + * Added a crash-fix on status_calc_bl_sub_homun to abort in case the homun + has no master (need to clean up this function later) [Skotlex] + * Tested char-txt load/save, it seems to be working fine, but you should + STILL backup, as I only launched the server (read old character format), + closed it down (saved into the new format) and relaunch it (read the new + format) and it didn't give problems (but there's still the possibility of + some field being read in the incorrect offset or such). [Skotlex] + * Updated the char save structure for char-TXT servers so that the homun id + will be saved, now also the map info (last point, save point, memo maps) + are now saved using the mapindex rather than the string. BACKUP BEFORE + UPDATING since this code isn't yet tested. [Skotlex] + * Cleaned up a bit the char-saving code, added overflow crash prevention in + case there are more memos than the max-allowed saved. [Skotlex] + * AM_CALLHOMUN can now be used to recall vaporized homuns. [Skotlex] + * AM_RESURRECTHOMUN will now fail when the homun is vaporized. [Skotlex] + * Added SCB_DYE which marks which status-changes need a forced cloth dye + change to 0 due to sprite issues. Currently only NJ_BUNSINJYUTSU's status + uses it. [Skotlex] + * Asura Strike now moves you to the target on fail always (unless the + target does not exists or is in another map or there's a obstacle on the + way) [Skotlex] + * Corrected skill_attack_area hitting dead characters on it's splash range. + [Skotlex] + * Swapped the values for OPTION_XMAS and OPTION_FLYING. This should enable + SG to show the fly animation again, even if sometimes others will see him + as Santa. As for xmas cloth, it shouldn't make much of a difference since + the view class is changed to christmas anyway. [Skotlex] + * Made AM_CALLHOMUN and AM_RESURRECTHOMUN be like the wedding skills, where + they automatically pick a spot around you. [Skotlex] + * Cleaned up some the AM_RESURRECTHOMUN code. Hopefully it works now. + [Skotlex] + * Cleaned up some the hom evolution code. [Skotlex] + * Fixed SIGSEGV with homunc save [Toms] +2006/08/14 + * Removed support for negative autosave intervals, instead added a + minsave_interval setting which specifies which is the minimum time between + character saves. Default to 100ms (map_athena.conf). [Skotlex] + * Sacrifice no longer shows damage to self. [Skotlex] + * When Asura fails, the skill display will still come off. [Skotlex] + * Lots of cleaning of the Homun-code. Perhaps the crashes as of late will + be fixed now (reusing AM_CALLHOMUN seems to be the cause of them) + [Skotlex] + * Increased Run's walk speed bonus to 25->50% [Skotlex] + * Modified emergency_call setting to allow for more specific configuration + (woe/non-woe, gvg-grounds/non-gvg-grounds, disable from nowarpto maps), see + skill.conf for details. [Skotlex] + * Fixed script engine allowing scripts to set a player's zeny to negative + values. [Skotlex] + * Fixed setting hide_woe_damage making even "miss" attacks seem to connect. + [Skotlex] + * When readjusting the fame-list, the last entry's id is also reset (may + fix characters appearing more than once on it?) [Skotlex] +2006/08/13 + * Removed @itemcheck as it was totally pointless. [Skotlex] + * Corrected states killer/killable being easily dispellable. [Skotlex] + * Fixed the totally wrong text messages being used for @killer/@killable + related atcommands, added appropiate entries to msg_athena [Skotlex] + * Magic and Misc attacks will now get type "flee" when they do less than 1 + damage, this blocks them from causing additional status effects when they + are blocked. [Skotlex] + * Cleaned up a bit the Basilica code, it should now properly end when you + walk. [Skotlex] + * Fixed some logs not working when you enabled all logs. [Skotlex] + * Corrected unmute being a level 60 command by default (should be 80) + [Skotlex] + * Corrected the mapif_parse_PartyChangeMap function to correctly update + level-range when someone logs on/off, fixes being unable to set even-share + on once it's been broken even when the characters out of range logoff. + [Skotlex] +2006/08/11 + * Fixed Kagebunshin no Jutsu crashing for dyes > 0; though this solution + might seem hackish (changing clothes colour to 0 when it starts while + storing original colour back in val4, restoring original dye upon + end), I believe this is the best way there currently is to solve + the issue. [blackhole89] + * Fixed Dancers/Bards being able to use normal attacks while performing. + [Skotlex] +2006/08/10 + * Fixed the item group bonus not working. [Skotlex] + * Fixed songs/dances always being considered overlapped with themselves. + [Skotlex] + * Added some additional song/dance overlap code that should correctly + change the effect of songs/dances when they overlap. [Skotlex] + * Added a check so that the status-change packet is always send to self + when the inflicted char is a player disguised. [Skotlex] + * Code cleanup on homunc, they stay in memory until player disconnect or + homunc destruction [Toms] + * Corrected Advanced Jobs HP bonus from 30% -> 25% [Skotlex] + * Hopefully fixed family-party-even-share not breaking when a member logs + out. [Skotlex] + * Should have fixed the login-sql crash when passed user-name's length is + beyond the limit. [Skotlex] + * Changed setting attack_attr_none to affect all neutral-element attacks. + Basicly, this setting is now used to determine who can hit for full damage + always when using neutral-attacks (defaults to non-players) [Skotlex] + * Fixed two instances in the login-sql server where the ip in the log-login + table was being stored backwards. [Skotlex] + * Now when a skill's range is 0 and the skill is NOT casted on self, it + will take the basic weapon's range (without Vulture/Snake Eye bonus). + [Skotlex] + * Now when a duration is not specified, sc_start/sc_start2/sc_start4 will + try to guess the duration by extracting it from the skill_db (it uses + skill_get_time on whatever skill is associated to the status-change using + val1 as skill-level) [Skotlex] + * Some cleanups on trade_tradeaccept to prevent packets being resent when + they shouldn't. [Skotlex] + * Fixed syntax error in 'guild' create table statement [Toms] +2006/08/09 + * Fixed Asura not wasting all SP away when it fails on cast-end. [Skotlex] + * Fixed homunc skill up bug [Toms] + * Adjusted some the dance/song/encore code so that the source of an + ensemble will always get checked, so that walking out of an ensemble skill + should make it end now. However, it's likely this is not completely solved + yet and will require further tweaking. [Skotlex] + * Added crash protection to the mob_db txt reading when the mob_db file has + lines with insufficient number of columns. [Skotlex] + * Moved the class-change code from battle_calc_weapon_attack to + skill_additional_effect. Alchemist summons now also have a chance of + triggering polymorphing. [Skotlex] + * Removed the code which was auto-setting attacks that do no damage to type + FLEE, since that was disabling status-effects which should incur even when + the damage was blocked. [Skotlex] + * Trade requests will now fail when either character is unable to act + (character in storage, vending, interacting with an npc, petrified, etc) + [Skotlex] + * Heard skotlex voice, changed all msg_table[] into msg_txt() in atcommand.c [Toms] +2006/08/08 + * Fixed the char-server not invoking the party_calc_state function when the + third party-member is added to a party, hence failing to check for families + and disabling even share from them unless all three relog first (state is + correctly calculated when party is first loaded). [Skotlex] + * Crash-protections in the mail-checking function. [Skotlex] + * Some additional parenthesis on equipment check in pc_equipitem, seems to + have fixed the mid/lower headgear-sprites not showing up. [Skotlex] + * Added back missing state set to prevent Ankle-Snare from being retrieved + after the target dies. [Skotlex] + * Fixed compilation warning [Toms] + * Added a check to handle Spider Web as a targetted skill. If there's more + than one character on the targetted cell, a different one may get trapped, + but it will mostly do as it is now. [Skotlex] + * Added check to Asura so that it will move you to the target when it fails + ONLY when you can cast the skill on the target (not stunned, asleep, target + not hidden, etc) [Skotlex] + * Changed the map_freeblock_unlock code so that when there's an "already + free'd pointer" error, the memory manager will print out the invoking + function rather than map_freeblock_unlock, this should help fix it up next + time it happens and is reported. [Skotlex] + * Casting Kaensin will clear out Suiton and viceversa now. [Skotlex] + * Fixed drop-rates (@whodrops) getting duplicates when you use @reloadmobdb + [Skotlex] + * Fixed unjailing not sending characters to Prontera. [Skotlex] + * Fixed yet again AS_SPLASHER doing full damage on all characters. Now you + can use the NK split damage value in the skill_db if you want damage + divided by the amount of targets rather than by 2. [Skotlex] + * Fixed crash on the battle_drain functions. [Skotlex] + * Cleaned up HAMI_CASTLE, HLIF_AVOID, HAMI_DEFENCE so that it's usable by + other types of objects other than Homunculus. [Skotlex] + * Cleaned up the Asura Strike code so that the SP/Spheres/States is not + consumed when the skill fails due to Fog of Wall. [Skotlex] + * When a negative delay for a skill is specified, this delay is now added + on top of the character's amotion rather than adelay [Skotlex] + * Modified main.sql to make the guild table allow NULL on the emblem data. + [Skotlex] + * Added file conf-tmpl/Changelog.txt to log config changes. [Skotlex] +2006/08/07 + * Fixed the login-sql server replying to the change-sex packet with the + wrong gender, causing the char-server to screw-up job-change updates. + [Skotlex] + * Cleaned up the apparent mess that is pc_skill. Hopefully it SHOULD work as + described on the docs now, this should also fix adopting not correctly + giving the family-related skills. The flag value of skill should be: 0 to + set the skill (if skill level is 0, this removes a learned skill), 1 grants + the skill as an item bonus which is temporary, and 2 will add a skill bonus + like 1, except the skill level adds up to whatever level already known of + that skill. [Skotlex] + * Fixed EQP_WEAPON related code messing up with both weapon AND shield. + [Skotlex] + * Cleaned up the Asura code so that when the skill fails your + SP/Spheres/Fury are all taken away always, as well as moving you next to + the target (as long as the target still exists within a reachable path from + your position) [Skotlex] + * SC_GUILDAURA is now removed on logout. [Skotlex] + * Fixed Venom Splasher doing half-damage instead of full-damage to the + "exploding" character. [Skotlex] + * Hopefully fixed the party_even_share cast-overflow bug as reported by + Adobe. [Skotlex] + * Standarized the autosave interval setting to be always in seconds + regardless of type. [Skotlex] + * Moved the "bosses can't be knockback" logic from battle_calc_* functions + and placed it on skill_blown. [Skotlex] + * Some parenthesis cleanup before invoking battle_calc_base_damage, could + be fixing the current issue with arrow attacks not adding the arrow damage. + [Skotlex] + * Fixed the map_search_freecell error which was making mobs fail to + respawn. [Skotlex] + * Added in Lupus's suggestion of not making multi-slot headgears set all + slot view-ids, which supposedly causes the client to re-draw the headgear + multiple times on characters. [Skotlex] + * Fixed HT_BLITZBEAT hitting neutral characters when it auto-triggers. + [Skotlex] + * Simplified the Tatami Gaeshi code. [Skotlex] + * Fixed AS_SPLASHER doing full damage on everyone except targetted char + instead of the other way around. [Skotlex] + * Fixed KAENSIN clearing out SUITON cells and viceversa. [Skotlex] + * The spawn area is now seen as range rather than absolute for mob spawn + lines. This means that x,y,10,10 will spawn the mob on a 21x21 grid around + the given x,y point. [Skotlex] + * Some clean up of the mob-spawn code. Now you can specify negative areas, + so that a spawn location such as 100,150,0,-1 will spawn a mob always on + x=100, but any Y value of the current map. [Skotlex] + * Reflected damage will now also have a chance of draining hp/sp. [Skotlex] + * Adjusted the order in which option/sc change packets are sent to match + Aegis's [Skotlex] + * Added script command getpartyleader through which you can retrieve + various information of a party's leader. See doc/script_commands.txt for + further information. [Skotlex] + * mpeg's Ninja work [Vicious] + * Adjusted Battle_check_target so that alchemist summoned mobs are + targetted by everyone as long as 1. The top-level master is a player and 2. + the actual attacker is not a mob-type. [Skotlex] + * Added config force_random_spawn which overrides the spawn-files defined + coordinates to make all mobs always spawn randomly on the map. [Skotlex] + * SC_SPEEDUP0 is no longer dispellable by SA_DISPEL [Skotlex] +2006/08/06 + * Updated item_db.sql & mob_db.sql to latest. [Toms] + * Little fixes on homunc (hp/sp are now saved and init stats changed) [Toms] +2006/08/04 + * Added a commented piece of code at the end of clif_parse_LoadEndAck which + will update your direction to wherever you were facing before warping. + Should this be the default? Nearby people DO see you facing on the same + direction before warping, it's only your client that will always see you + facing north on spawn (the spawn packet does contain direction + information). [Skotlex] + * Updated @mobinfo to display slots in the drop information. [Skotlex] + * Fixed flag.elefix not being respected in battle_calc_misc_damage. + [Skotlex] + * Some code cleanups in battle_calc_damage. [Skotlex] + * Modified bAddItemHealRate so it can receive both item-id and item-group + values (since the first item-id is +500, there's no risk of mixing them + up). [Skotlex] + * Removed settings enemy_critical_rate, homun_critical_rate. Added settings + enable_critical (defaults to specify only players), mob_critical_rate and + critical_rate. The last applies to all non-mobs and non-players + (battle/battle.conf) [Skotlex] + * Removed settings mob_npc_warp, mob_warpportal. Replaced with setting + mob_warp which specifies which types of warp can a mob step into + (battle/monster.conf) [Skotlex] + * Enabled Mastery damage on Soul Breaker again, moved adv katar mastery out + of the mastery function so that it may apply to all skills except Soul + Breaker. [Skotlex] + * Changed name of the setting log_pick to log_filter since that's what it + does now. [Skotlex] + * Modified enable_logs so that instead of a 0/1 setting, you can specify + which kind of events to log (so you can use a combination), see log_athena + for the bitmask configuration. [Skotlex] + * Cleaned a bit the contents of log_athena.conf + * Hide/Chasewalk will again stop screaming skill name. [Skotlex] + * Soul Breaker will no longer receive Mastery damage. [Skotlex] + * Fixed warning:'type' might be used uninitialized in this function [Toms] +2006/08/03 + * Added a check to skip the experience share of characters who are dead or + on another map. [Skotlex] + * Reverted the previous change, chasewalk has no icon, only the str-bonus + has that fist icon now. [Skotlex] + * Allowed chase-walk to display a skill animation when using it. [Skotlex] + * Readjusted the Chasewalk icon to be as it should be. [Skotlex] + * GS_DESPERADO is now a short-range attack skill. [Skotlex] + * Changed the Battle-Orders icon to be the Strength Up icon (for + Chasewalk's str bonus). [Skotlex] + * Fixed using the right-hand weapon's size modifiers regardless of which + weapon's damage was being calculated in regards to. [Skotlex] + * Simplified the ignore-size check by making the Weapon Perfection check be + done when specifying the flag, also moved the size-fix property of riding + spear-knights to status_calc_pc. [Skotlex] + * Changed SI_CHASEWALK value to 119 as concluded by LoneWolf [Skotlex] + * Corrected clif.c sending the raw mdef2 value to the client instead of + first substracting the "secret vit/2" bonus from it. [Skotlex] + * Added a damage cap to CR_ACIDDEMONSTRATION of INT_MAX/2 to prevent + overflows. It is not capped to INT_MAX because damage increasing skills + would cause it to still overflow afterwards. [Skotlex] + * Fixed NPC_CRITICALSLASH not being considered as a Critical hit by the + code. [Skotlex] + * Added RUDE_ATTACKED_COUNT so you can easily adjust how many rude-attacks + should happen before a mob uses the rude-attacked skill. Value has been set + to 2 for now. [Skotlex] + * Now when a mob changes target (to someone they can hit) their + rude-attacked count won't be reset, but instead will be reduced by one. + [Skotlex] + * SC_SPEEDUP0 can now stack with the other speed raising buffs. [Skotlex] + * Some adjustments so that the last-skill-used will be correctly cleared + when your combo-time ends. [Skotlex] + * Fix a bug in atcommand_charspeed [Toms] + * Fixed a logic error preventing from cooking anything [DracoRPG] + * Cleaned up the last NJ update code. [Skotlex] + * Added @ command `charspeed` [Skotlex] + * Fixed @jailfor using MAP_PRONTERA as jail instead of MAP_JAIL [Skotlex] + * Removed case for GS_SPREADATTACK on damage packets to see if the skill + displays correctly now. [Skotlex] + * Corrected Deluge/Volcano/V. Gale overlaps so that the placing tiles are + removed, NOT the ones who were already placed. [Skotlex] + * Made SC_SPEEDUP0 and SC_SPEEDUP1 use different icon IDs, to fix + icon-confusion when both are enabled at a time. [Skotlex] + * Mob rude-attacked count is not reset now on picking a new char (gotta + investigate this further) [Skotlex] + * Changed atoi to strtoul for guild-experience's field [Toms] + * Fixed a bug in int_storage.c, temp array doesn't have the good size [Toms] +2006/08/02 + * Modified yet again SC_SILENCE after iRO tests from Entwined on IRC. + Silence now ONLY blocks skills from being used, it will not stop on-going + casts. [Skotlex] + * Updated status_cast_cancel to also include silence (so the cast bar is + cancelled if you are silenced during it) [Skotlex] + * Updated the way SC_SILENCE works. From what I remember (from previous + forum discussions) it: 1- Always blocks skills from being used. 2- Will + only block a skill when the cast-bar ends IF the skill is targetted. If + anyone wants to debate to get this changed, make an appropiate forum topic + in the svn development area to discuss. [Skotlex] + * Added a check in the walking code when triggering skills. + NPC_SELFDESTRUCTION will no longer cancel walking, it will instead resend + the walk packet, this effectively causes the mob to start walking + (clientside) while the cast-bar is showing. [Skotlex] + * Fixed a logic error on battle_get_master which was causing infinite + loops.. [Skotlex] + * Fixed homunculus error message [Toms] + * Rewrote pc_payzeny to not use doubles, it may more accurately prevent + charging a player more zeny than they can withhold. [Skotlex] + * Fixed failing to create Deadly Poison Bottles damaging 50% of your max + life instead of 25% [Skotlex] + * Added the missing status-change flags to SC_FREEZE to signal it should + modify def and magic def [Skotlex] + * Little add on NJ_HUUMA [Toms] + * Merged Mpeg's work on Ninja skills [Toms] + * Fixed Martyr's Reckoning having a cap damage of 32k. [Skotlex] + * Now you can teleport in Thanatos Boss room, but you can't respawn there [Playtester] + * Fixed Defender Raising Walk speed instead of diminishing it. [Skotlex] + * Added a check on status-change load to prevent loading speed-affecting + status when their speed adjustment is 0 (prevents division by zero) + [Skotlex] + * Code cleanup & optimization on guild part of char-server [Toms] + * Fixed script code data not being free'd if a player quits in the middle + of a script. [Skotlex] + * Modified run_script so that when there are leaks, it will report the + place where run_script was called from as source rather than the inner code + of run_script (for debugging purposes) [Skotlex] + * Made recursive master check the default (otherwise it messes skill -> pet + -> player kind of herarchies) and cleaned up some the battle_get_master + code to prevent infinite loops in the weird case someone specifies that + their master is itself. [Skotlex] + * Recoded the GuildAura code to use val3 & val4, allowing much greater stat + bonuses (in case someone wants to get Guild Skill level 20 or something + crazy like that) [Skotlex] + * Updated battle_check_target so that all alchemist summoned mobs can be + target by everyone. [Skotlex] + * Cleaned up skill_check_condition_mob_master_sub, it will now count both + total number of summoned mobs and amount that belong to the same type. + [Skotlex] + * Corrected AM_CANNIBALIZE so it will fail if you already have plants of + another type out. [Skotlex] + * Using NPC_SELFDESTRUCTION no longer will make the caster stop walking. + [Skotlex] + * Removed SI_GUILDAURA, and replaced it with SI_LANDENDOW, now + Volcano/Deluge/V. Gale will get that funky icon instead. [Skotlex] + * Changed clif_hominfo to receive both sd and hd as parameters + * Some redundancy cleaning in mercenary.c [Skotlex] + * Moved updating of sd->mercenary.hp from merc_damage to pc_makesavestatus. + [Skotlex] +2006/08/01 + * Miscellanous fixes which make the Marine Sphere self destruction work as + best as I can. It only has one flaw: It self-destructs instantly after + walking because if I make it use self-destruction with a cast-bar, + client-side the object stops moving inmediately... [Skotlex] + * Modified unit_walktoxy and NPC_RUN to enable running even when the caster + does not has the MD_CANMOVE bit on. [Skotlex] + * PF_MINDBREAKER will now silently fail if you try to use it on someone who + already has the status active. [Skotlex] + * Cleaned up yet again skill_landprotector, now new cells of + Deluge/Volcano/V.Gale will delete previous cells when they are recasted on + top of each other. [Skotlex] + * Summoned Marine Spheres no longer get the MD_CANMOVE bit. [Skotlex] + * Cleaned up some more the SC_JAILED code [Skotlex] + * merged in atcommands jailfor, jailtime, charjailtime. Thanks to Meruru + and Coltaro for the code. [Skotlex] + * Cleaned the code of atcommands jail and unjail [Skotlex] + * Be warned that the code MAY contain bugs as I adjusted it to save the + character's position before jailing, allowing the automatic unjailing to + warp you back to the exact spot you were at before being jailed. [Skotlex] + * Should have fixed the cooking sets not displaying all cooking available + items. [Skotlex] + * Figured out and fixed the issue with Volcano/Deluge/Violent Gale not + really working. Thanks to Mpeg for noting it out. [Skotlex] + * Modified Self Destruction, so that Marine Spheres in non-versus maps will + hurt only enemies, while in all other situations this skill will hurt + everyone around them. [Skotlex] + * Expanded setting debuff_on_logout so that &1 removes negative buffs and + &2 removes positive buffs. [Skotlex] + * Food status boosts will no longer end on death, but they will end when + you respawn or logout. [Skotlex] + * Added battle config file status.conf, moved some settings from skill.conf + and battle.conf to it since they are entirely Status-Change related. + [Skotlex] + * Added the missing lines to enable script command "kickwaitingroomall" + [Skotlex] + * Magic Rod's can-act delay will no longer be applied when you absorb a + spell. [Skotlex] + * Fixed Don't Forget Me increasing speed instead of decreasing it. [Skotlex] + * Modified setlabel so that the script engine barks when you are trying to + use the same label name as a constant or variable name. [Skotlex] +2006/07/31 + * Fixed the subnet 0 mask being reset to 0 when someone goes up on the fame + rankings. [Skotlex] + * Updated Poison React chance to counter and number of counters as per + skill description updates. [Skotlex] + * Fixed Sharpshooting being counted as a magic attack, and hence, using + your MATK as base damage. [Skotlex] + * Fixed NPC_STOP id value in skill_cast_db [Skotlex] + * Bladestop will no longer stop when you push either of the characters + around. [Skotlex] + * Fixed Enchant Poison having a near 100% chance of poisoning target on + attack. [Skotlex] + * Little fix on duel [Toms] + * Added possibility to restrict duel usage to same map [Toms] + * Merged mpeg's fix on ninja skills [Toms] + * Corrected a status_get_race call which should be status_get_race2 in misc + attacks. [Skotlex] + * Moved the Devotion code to the top of the SC list in status_damage, + meaning that now stuff like being asleep or confused won't end if you are + hit, but the damage is absorbed by devotion. [Skotlex] + * Added the Soul Link of Rogue speed bonus to Chase-Walk. Since there's no + information of how much the bonus should be, it currently is a conservative + 10%. [Skotlex] + * Fixed a possible crash in the main script engine when restoring previous + script. [Skotlex] + * Fixed sleep.tick not being set back to 0 before resuming execution, which + leads to scripts that are continously executed even when they already ended + (they do nothing but waste resources) [Skotlex] + * Fixed a pair of free -> aFree used on stacks, which would lead to memory + manager reporting leaks where there aren't. [Skotlex] + * Removed incorrect "Waterball range+1 when standing on suiton" feature. + [Skotlex] + * Corrected the Speed update code to prevent sending "walk to xy" packets + twice when the affected character is a player. [Skotlex] + * Expanded mob can't move warning to print out where this mob was stuck at + (map, x,y) [Skotlex] + * Fixed segmentation fault in status_change_end, vd wasn't initialized [Toms] +2006/07/30 + * NPC_INVISIBLE will now use Cloaking of a level +9 of the used skill + level, so that at level 1 they can attack, use skills and receive no + walking penalty. [Skotlex] + * Mob casted Sanctuary will no longer always heal it's targets regardless + of element/race [Skotlex] + * Status change packets will now use as criteria for sending the actual + view_class instead of player/not-player. This will fix status-changes + displaying improperly on clones, and also possible crashes with disguised + players. [Skotlex] + * Merged mpeg's fix on ninja skills and SA_VOLCANO,SA_DELUGE,SA_VIOLENTGALE [Toms] + * Added bNoMiscDamage setting so you can specify misc-damage blocking from + skills. Modified battle_calc_damage so that even Pressure and similar + skills will be affected by this setting. [Skotlex] + * GS skill updates/fixes [Vicious] + * Force all users offline in sql when char-server starts [Toms] +2006/07/29 + * Removed ugly struct cast in login.c [Toms] + * New version of buildin_query_sql which accept more than one column and + can return the number of rows. See script_commands.txt for more details. [Toms] + * Fixed nullpo in merc_hom_skillup [Toms] + * Added a return value to buildin_rid2name if rid is invalid [Toms] + * Made the SQL ping interval default to 7 hours. [Skotlex] + * Made skill_unitsetting remove the group when no unit-cells were placed + down. basicly this means that if landprotector blocks all tiles, the group + will be removed from memory, preventing said group from counting to the + total number of skills you can set. [Skotlex] + * Fixed segmentation fault in script engine when calling something which is not a function [Toms] + * Fixed segmentation fault in script engine when activating DEBUG_RUN flag [Toms] +2006/07/28 + * Added Ishizu's code to check ammo type on attack. No more using Grenade + rounds with Guns. [Skotlex] + * offensive heal/sanctuary will only happen when the source of the heal is + a player, mob/pet casted heal will now always heal regardless of target. + [Skotlex] + * Shield Chain will now ignore the 'ice-pick' defense piercing bonus. + [Skotlex] + * Self destruction will now hit all characters in range, not just enemies. + [Skotlex] + * Cleaned up the NJ update code: [Skotlex] + - Restored code which was removed (stuff like SC_SKA) + - Fixed possible crashes on some NJ skills if used by non-players. + - Fixed most NJ magic spells doing more damage than they should. + - Fixed ZenyNage being able to do more damage than zeny you have. + - Cleaned up skill setting code for Suiton and Kaensin + * Some cleaning of battle_drain, Evil Druid card should work now. [Skotlex] + * Made status_damage allow damaging of objects not on a map, this should + fix pet-catching making the mob never respawn again. [Skotlex] + * Casted nothl to (unsigned int) in sprintf functions, IP is 32bits and sql field the same :) [Toms] + * Fixed "warning: `list' might be used uninitialized in this function" in char/char.c@3032 [Toms] + * Fixed "uninitialized local variable 'i' used" in skill.c and "warning: suggest explicit braces to avoid ambiguous `else'" in battle.c [Toms] + * Fixed "warning: long unsigned int format, unsigned int arg" in parse_login (login_sql\login.c) [Toms] + * Fixed sign warnings in login/login.c [Toms] + * Fixed "conversion from 'double' to 'int', possible loss of data" [Toms] + * Fixed "warning: redefinition of [ushort/uint/ulong]" [Toms] + * Fixed duplicate case value on NJ_SUITON [Toms] +2006/07/27 + * Fixed a memory leak when there exists more than one user function with + the same name, added the appropiate warning when this happens. [Skotlex] + * Added reporting source file when an npc shops item's price is + exploitable. [Skotlex] + * The picklog will now record negative values for items sold to npcs. + [Skotlex] + * Added inmediate position and hp-bar update when a character joins a + party. [Skotlex] + * Added missing SC information to NPC_CHANGEUNDEAD [Skotlex] + * Added config setting party_update_interval so you can specify how often + the party-mate minidots should be updated (defaults to 1 sec). [Skotlex] + * Removed a bunch of broken comments in skill.c [Skotlex] + * Synced the script.c file with as much data as possible from jA's: + [Skotlex] + - A lot of functions were moved around, a bunch of indentation and + space-usage changes were done to make it easier to diff against their + files. + - Miscellanous addition and corrections were applied. + - Largest one is likely a restructuring of run_script_main, which hopes to + solve the memory leaks. + - script engine now uses the setjmp functions to restore memory state when + there's an error parsing scripts, which means that script errors won't + cause the map-server to inmediately bail out anymore. + - NOTE that the amount of changes is pretty extensive, so DON'T USE THIS on + a live server. Update only to help test and debug to see if the script + engine memory leaks are gone. + * Added a cleanup routine on shutdown to remove all characters from memory + for whom the save ack has not returned from the char-server yet. [Skotlex] + * Now when you set the guardian's HP, if the guardian is spawned, it's HP + will be updated accordingly (and if you set it to 0, the guardian is + killed) [Skotlex] + * Added functions status_set_hp/status_set_sp to set hp/sp to a given + value. Applied usage of these on the Berserk and Soul Change code. + [Skotlex] + * Added config setting "party_hp_mode" (battle/party.conf) which determines + method to use to update party-mate hp bars. Aegis style is to update HP + bars whenever HP changes, while eAthena style is to update it together with + the map party dots. Defaults to aegis style. [Skotlex] + * Fixed packet 0x22a having the manner and opt3 packets in inverted + offsets. [Skotlex] + * Readded the check which prevents Cloaking from activating when your + learned level is less than 3 and you aren't next to a wall. [Skotlex] + * Some cleanups to the Frenzy/Berserk status change, it should probably + work correctly now. [Skotlex] + * Removed a redeclared variable i in the parsing of the fame list (char-sql + server) which seems to be the cause of the random memory corruptions. + [Skotlex] + * Updated item_db.sql to latest. [Toms] + * Fix homunc & code cleanup [Toms] + - Timer problems on delete_timer + - Intimacy problem (overflow & new values) + - Homunc deleted if intimacy < 0 + - base exp is now given to master + - Homunc sometimes not saved +2006/07/26 + * Fixed a memory leak when reading the item_db txt. [Skotlex] + * Applied the necessary changes to make @partyoption reflect it's changes + on the alt+p window. [Skotlex] + * Modified party_item_share_type config setting so that using 1 disables + item-sharing from non-mob loot (player dropped items or pet loot) and 2 + enables round-robin instead of random sharing. Using 3 obviously is + enabling both 1 and 2. [Skotlex] + * Added battle_get_master which returns the master bl of a given object. + [Skotlex] + * Recoded battle_check_target to use battle_get_master, the src/target + switch has been split into two, so that actual target and master target are + seperately treated (same for source). [Skotlex] + * Added support for "sc_end -1" which will clear all status changes. Added + the constant SC_ALL so you can use in scripts "sc_end SC_ALL;" instead. + [Skotlex] + * @pettalk will now fail when muted. [Skotlex] + * Enabled changing of equipment while stunned/asleep/petrified/etc [Skotlex] +2006/07/25 + * Cleaned up run_script_main to properly free previous stack-data when + running scripts. Note that scripts may still leak memory when run by + non-players and they don't reach the "END" state, however I am not sure how + this case should be handled, so it's left as it is for now. [Skotlex] + * Added a missing ntohl call in the loginlog code. [Skotlex] + * Added a check when buying from npcs to allow buying of item_avail items. + [Skotlex] + * Fixed duel accept invite sending the packet before the duel data is set + (resulting in a packet that noone receives). Thanks to Toms for finding it + out. [Skotlex] + * Fixed a possible crash when you dual-wield and the total damage is 0. + [Skotlex] + * Added Toms's perl scripts item_db.pl and mob_db.pl (they are in tools/), + they convert the txt databases into sql. [Skotlex] + - Usage: "script" < "input file" > "output file". eg: ./tools/item_db.pl < db/item_db.txt > sql-files/item_db.sql + * Updated the sql files since now it's quick [Skotlex] +2006/07/24 + * Re-updated the mob_db.sql to latest. [Skotlex] + * Cleaned up the skill_landprotector function to correctly block only magic + skills from being placed on land protectors. [Skotlex] + * Corrected itemdb_group so that it will not return the random item givers + (should give priority to actual item groups, so that the item heal bonuses + work correctly) [Skotlex] + * Cleaned up the Mistress Card related code so that the no-gemstone bonus + reduces item requirements by one rather than totally skip them. [Skotlex] + * Cleaned up the logs "can log"function to use the IT constants. Also + corrected the "only log large amounts" setting not working on negative + values (trades). [Skotlex] + * Adjusted skill_castfix_sc so that Suffragium will get consumed even on + instant cast skills, but Memorize won't. [Skotlex] + * BladeStop will now end when either of the characters is moved (knocked + out?) around. [Skotlex] + * Moved the Zeny penalty code from respawn to pc_dead. [Skotlex] + * Added a check to prevent Deluge/Volcano/Violent Gale from being placed on + top of each other. Reverted the previous 'fix' where atk was being + increased based on armor element rather than element of attack. [Skotlex] + * Removed the noreturn mapflag check from script command warp. [Skotlex] + * Homuculus cleanup [DracoRPG] + - Replaced nullpo's in parse functions by silent checks + - Removed server-side effect for menu option 0 (view status window... + why does the client send us the packet since we don't care? -_-) + - Rewrote intimacy underflow checks so they are really effective (no + need to check if an unsigned is < 0, it won't work... check before!) + * fixed unban unblocking players as well. [Skotlex] + * Fixed Volcano/Deluge/Violent Gale increasing damage based on element of + attack instead of defense element of attacker. [Skotlex] + * Cleaned up the code of Magic Rod, fixed it not giving SP. [Skotlex] + * Moved the code of Hermod and Basilica to castend_pos2 so it should work + now. [Skotlex] + * Modified the code of Ankle Snare so the status ends on unit's time-limit + rather than when the snared object moves away. [Skotlex] + * Re-worded the water check of ST_WATER skills. [Skotlex] + * Allowed sc-cast reductions to be processed even when cast-time is instant + (to let suffragium end even on instant-cast skills) [Skotlex] +2006/07/23 + * Modified setting skillrange_by_weapon (skill.conf) to be a + per-object-type setting instead of yes/no. The default now is that + weapon-based skills will take the attacker's range for non-players. + [Skotlex] + * Changed the default of skillrange_by_distance to include homunculus. + [Skotlex] + * Fixed buildin_isequip not working correctly with non-cards. [Skotlex] +2006/07/22 + * Updated mob_db.sql to latest. [Skotlex] + * Applied Toms's suggested corrections to homun code. [Skotlex] + * Corrected Cannibalize/Marine Sphere ignoring the selected summon spot. + [Skotlex] + * Fixed looting pets ignoring the item pick-up priority of other players. + [Skotlex] + * Should have fixed a signess warning in login txt. [Skotlex] +2006/07/21 + * Added blocking of @me when muted or in berserk status. [Skotlex] + * Corrected the @follow timer not being deleted on logout. [Skotlex] + * Applied the homunculus code fixes provided by Toms. [Skotlex] + * battle_check_target will now tag homunculus as invalid target when the + source is a skill-type object. [Skotlex] + * Added a check on pc_equipitem so that when the client specifies to equip + a weapon on the right hand when the left hand is available, the weapon will + be sent to the left hand instead (when dual-wielding is possible, + obviously). Same for the left/right accessories. [Skotlex] + * Added the necessary checks so that Suiton makes Fogwall have double + duration, and to make water-requiring skills to consume their cells. + [Skotlex] + * Corrected the loadmap event description to specify that the mapflag + required is actually "loadevent", NOT "loadmap"! [Skotlex] + * Now when the char-txt server does not finds a requested party, it will + clear out said party id of all characters (will help prevent massive + spamming/overhead when for some reason the party file needs to be deleted). + [Skotlex] + * Combo skills (inf = self, inf2 = no target self) no longer check range if + you use them while your attack-timer is still active. [Skotlex] + * Added back a map_freeblock call in skill_delunitgroup which caused a + memory leak when removed... [Skotlex] + * Added a check to prevent Blind from ending while standing on a fog of + wall. [Skotlex] + * The mob Slave ai will be executed now even when the slave has a target. + This will allow for "instant" warping to the master when it changes maps or + teleports. if the slave has a target already, it won't unlock it and chase + back to the master or anything like that. [Skotlex] + * Removed a couple of checks that prevents item ids above 20000. However, + remember that the max id is still ~32k or the client is the one who's gonna + crash! [Skotlex] +2006/07/20 + * Added source reporting when you do an invalid int&str or str&int + operation on a script. [Skotlex] + * Fixed the intif party creation packet having the incorrect size sent, + hence causing the leader's level to be read as garbage (which caused the + "impossible to even share" bug). [Skotlex] + * Added pc_check_weapontype to do a proper skill weapon check that takes + into account dual-wielding. That is, if a skill can be used with + daggers/axes, you'll be able to use the skill when dual-wielding them. + [Skotlex] + * Corrected Cloaking level 1-2 not letting you move across walls. [Skotlex] + * updated cloaking code so that when you set "enable cloaking without + walls", the code will consider you as "always next to a wall", thus you get + the wall-speed bonus always. [Skotlex] + * Applied the fix to homunculus name saving... [Skotlex] + * Added battle config settings agi_penalty_target and vit_penalty_target, + they define which object types will get vit/flee reductions when + multi-targetted and defaults to only players (battle/battle.conf) [Skotlex] + * Added the dummy intravision case for the changeoption packet 0x229 + [Skotlex] + * Corrected Fog of Wall so that all targetted offensive skills (not only + those who do damage) will fail on cast-end 75% of the time. [Skotlex] + * corrected @homlevel up and one entry in the homun exp table as reported + on the forums by Albator. [Skotlex] + * Added the SQL fix to Homunculus skill learning/saving bug [DracoRPG] + * Added a status_check_skilluse on skill_attack_area call to prevent splash + damage skills from hitting hidden/trickdead/etc characters. [Skotlex] + * Corrected fog of wall to behave as best known currently: [Skotlex] + - Only takes effect when targetting a character inside it + - -50hit/-75% damage when using normal-ranged attacks + - -25% damage from all damage skills + - 75% chance of all targetted damage skills of failing. + * Should have fixed @refine applying multiple times to equipment that uses + multiple equip slots. [Skotlex] +2006/07/19 + * Fixed the inf code update breakage which was blocking all offensive + skills. [Skotlex] + * Added battle setting homun_critical_rate (defaults to 0) [Skotlex] + * Removed enemy_str/pet_str/enemy_perfect_flee and replaced them with + enable_perfect_flee which specifies which objects can have perfect flee and + enable_baseatk which specifies which objects can have a base attack value + (both in battle.conf) [Skotlex] + * Modified the targetted skill logic to enable offensive skills to be + targetted at party/guild members if the appropiate inf2 value is set. + [Skotlex] + * Added checks to make adding items to inventory/cart fail when a char is + in finalsave state. [Skotlex] + * Fixed parse_names on irc.c crashing when receiving a null argument. + [Skotlex] + * Modified the parsing of the names line, since some servers will send @ + instead of = when separating the information. [Skotlex] + * Fixed the homun creation sql statement. Why noone else did so before? + [Skotlex] + * When enabling/disabling hiding/unhiding an npc, if the npc is a warp, it + will use clearchar and spawn packets instead of changeoption. Thanks to + Toms for the fix. [Skotlex] + * Corrected Trim chars to block 'enter', as explained by the Ultra mage. + [Skotlex] + * When the client passes account version 0, the login server will set it to + 1 now. [Skotlex] + * Corrected the HP bar scaling when HP is above Short Max. It should + display fine for any HP value now. [Skotlex] + * Added a check when the mob's adelay is shorter than the amotion, in which + case the adelay will be changed to the amotion value. [Skotlex] + * Some minor mapflag changes. [MasterOfMuppets] +2006/07/18 + * Added atcommand @partyoption, lets you alter the party item-distribution + type on the go. Usage is "@partyoption <pickup share> <item distribution>", + where both arguments can be 0/1, yes/no, etc. [Skotlex] + * Updated @changeleader and @partyoption to use msg_Athena entries. + [Skotlex] + * Added character 013 (enter) to the list of characters that are always + removed from new character names. [Skotlex] + * Fixed a crash when trying to extend TK's infinite combo feature. [Skotlex] + * Corrected Poison React to counter regardless of distance, and to use the + skill's 50+5*lv% counter chance (instead of 100%). [Skotlex] + * Corrected Venom splasher's splash damage [Skotlex] + * You now can't move/attack/use-skills when using Cloaking of a level less + than 3 [Skotlex] + * Fixed compilation of mercenary.c [Skotlex] + * Corrected Fog of Wall's "targetted spells fail 75% of the time" feature + by making it behave like GTB, that is, you just get a skill-failed on + cast-end, no skill-animation at all. [Skotlex] + * Added a proper check to make aggressive mobs never override homun targets + regardless of distance. [Skotlex] + * Removed a bunch of homun-related variables that are not needed at all. + The alive condition is removed, now the code checks for the hp value to + know if the homun is alive or not. [Skotlex] + * Cleaned up a bit the skill-id function, homun skill checks (such as delay + and skill-lv learned) should be correct now. [Skotlex] + * Added a proper check to make aggressive mobs never override homun targets + regardless of distance. [Skotlex] + * Fixed giving the 100% damage bonus when no-splash-targets are found in + the blown path to Grandcross instead of Bowling Bash. Bowling Bash damage + equation becomes then +50*lv% rather than +40*lv% when there's no + splash-damage (the 50*lv% figure is custom, all we know is that level 10 + does 600% instead of 500% damage). [Skotlex] +2006/07/17 + * Updated mob_db.sql to current mob_db.txt data. [Skotlex] + * The char-server will allow off-line character saves when said char is + tagged for final-save (this is the scenario when the char-map reconnect). + [Skotlex] + * Should have fixed the Cart Termination damage code to be scaled correctly + when you change the max cart weight. Thanks to The Ultra Mage for the error + clarification. [Skotlex] + * Implemented Grandcross weird property where if there's noone on the path + it'll hit twice for the skill's reported damage, and when there is (or you + can't knockback the target) it'll do a splash attack that hits twice for + 500% to all affected targets. [Skotlex] + * Some cleaning of the combo code. TK Rankers will now get their combo-time + extended each time they trigger a kick, enabling them to do "unlimited + combos". [Skotlex] + * Modified the autosave function to use a sweep across the player db + instead of across connected clients. This will cause non-connected players + (like autotraders) to also be saved on a regular interval, may help with + possible data-loss from said characters on unclean shutdowns. [Skotlex] + * Removed the code that forces aggressive mobs to go after a Homun instead + of their master (no reason why there should be such a condition). [Skotlex] + * Some sign quest map flag updates [MasterOfMuppets] + * atcommand_follow is now more verbose. [Adam] + * Manually added int_homun.c to the VS8 char_sql project, *should* work [DracoRPG] + * Orn's fix to the very critical skill level up bug [DracoRPG] + * Updated mob_db.sql to current mob_db.txt data. [Skotlex] + * Added Orn's lil fix on homun [Vicious] + * Added Homunculus system, enjoy! [orn aka Nylou] + - WARNING: This currently only works with the SQL version, as the TXT char-server + has no code for it at the moment. You TXT server won't break, but the char-server + will complain of an unknown packet if you try to get an Homunculus + * Updated nomemo mapflags based on info from http://ro.doddlercon.com/images/memo.jpg [Poki#3] + +2006/07/15 + * Small change in conf/battle/player.conf to say that 199 is max aspd allowed + (Haplo says that there are many reports of having over 200 is giving errors) [Evera] +2006/07/13 + * Kaahi no longer shows the heal effect to everyone. [Skotlex] + * Eska no will cause defense to change randomly every second. [Skotlex] + * Tuned up some more NJ_KAENSIN based on Tharis's information. [Skotlex] + * Corrected NJ_KAENSIN as per description. [Skotlex] + * Fixed a leaking map_freeblocklock on skill_del_unitgroup. [Skotlex] + * Changed the default save interval to 5 minutes. Added support for + specifying fixed save-intervals by using negative values. [Skotlex] EG: + - Save interval set to 300 (5 minutes): all characters will be saved in + equal time-slots, so that everyone is saved every 5 minutes regardless of + number of players online. + - Save interval set to -1000 (1000 ms): One character will be saved every + second, regardless of amount of characters online. + The new fixed-time-slots method is meant for larger servers, so that they + can control the saving-induced stressed on the char-server. + * Fixed @storeall and @charstoreall failing when the target character + already had the storage open. [Skotlex] + * Reverted temporarily the Cart Termination equation until it can be + fixed... [Skotlex] + * Fixed script command "recovery". [Skotlex] +2006/07/12 + * Fixed a small typo in my code [Zido] + * Added negative value in bonus exploit fix for more stat bonuses [Zido] + * Fixed exploit in pc_bonus there are no checks that check that the value being + added onto a status don't make it go below zero, which means if you have a mineral + card and reset stats it reduces your base attack to lower than zero, making it + go up to 64000. Fixed by adding a check for SP_BASE_ATK, although i recommend + doing it for other status bonuses also [Zido] + * Recoded NJ_BAKUENRYU to behave as I understand it best from the + skill-description (since Haplo told me this skill doesn't really has video + information or anything...) [Skotlex] + * Fixed NJ_TATAMIGAESHI to use ground-tiles rather than "for each in path" + calls. The skill should be working correctly now, except for the fact that + the correct "unit id" is missing (this is what would give the ground tile + it's correct display). Temporarily it is using 0xba until the correct value + is found. [Skotlex] + * Added back the undead check to turn undead/resurrection to prevent + damaging non-undead targets, removed it from the battle damage section. + [Skotlex] + * Resurrection will now silently fail when used on non-undead + not-dead + characters. [Skotlex] + * Poem of bragi/magic String's base delay reduction at level 10 (or above) + is now 50% instead of 3*lv%. [Skotlex] + * status_damage will no longer fail when the target is not on a map AND the + flag is 2 (charge rather than damage). Fixes SP-draining status changes + ending suddenly when in-between maps. [Skotlex] + * Fixed the IP value being apparently incorrectly casted before inserting + into the loginlog table on "connect success" events. [Skotlex] + * Fixed Cart Termination's damage. [Skotlex] + * Added the missing check to remove character from memory when logging out + and using the charsave_method which saves character map-server-side. + [Skotlex] +2006/07/11 + * Fixed inverted check which was preventing you from buying more than 1 + from any stackable item.... [Skotlex] + * Should have fixed the crash in intif gm message... [Skotlex] + * Fixed GTB card only working while you had a status-change active. + [Skotlex] + * Fixed being unable to compound cards in armor. [Skotlex] + * Made @monsterignore be an universal ignore. Means you cannot be targetted + as an enemy by anything. Also added alias "@battleignore" which does the + same as monsterignore. [Skotlex] + * Fixed magic power setting your min matk as max-matk. [Skotlex] + * Modified the packets involved in @fakename in hopes it'll refresh + correctly on nearby clients now. [Skotlex] + * Fixed clif_parse not checking for func_parse before sending data to the + connected clients. This in turn required various code-rewrites in: [Skotlex] + - duel related messaging functions (added clif targets DUEL/DUEL_WOS). + - intif whisper to gm function + - day/night timers + - Rewrote the parse_console function to stop allocating/deallocating memory + on every call. + - Modified chrif_charselectreq to receive the player's ip among the data. + * Added function clif_disp_message, which is the same as + clif_disp_onlyself, except you can specify the targets (it sends a + guild-chat packet) [Skotlex] + * Fixed the subele bonus (elemental reduction) being applied to the element + of the attacker instead of the element of the attack. [Skotlex] + * mob skills now won't trigger on unit_stopwalking calls. [Skotlex] + * Coded @reset. [Skotlex] + * Reenabled @changesex [Skotlex] + * Added function pet_create_egg which handles creating pet eggs correctly + (when passed item id is indeed a valid petegg). Applied this on @createitem + and getitem. [Skotlex] + * Cleaned up code of @item [Skotlex] + * Cleaned up the itemdb_isequip functions. itemdb_isequip will now return + if the item is equipable by players, itemdb_isstackable returns if the item + can be stacked, and itemdb_isidentified returns if the item should drop + identified. [Skotlex] + * Added defines CARD0_PET/CARD0_FORGE/CARD0_CREATED to identify if a given + item has "invalid" cards, added define function itemdb_isspecial to + simplify this check. [Skotlex] + * Removed itemdb.c considering item ids above 20000 as invalid. [Skotlex] + * Cleaned up script commands getitem and card-counting related ones. + [Skotlex] + * Cleaned up a bit more pc_isequip [Skotlex] + * Added script function warpportal(x,y,targetmap$,targetx,targety). + This creates warp portals as in the skill unit as a volatile alternative + to static warp portals. [blackhole89] + * Modified the login-sql server to do the ip-ban check only on the + auth-packets instead of on every packet. [Skotlex] +2006/07/10 + * Corrected Warp Portal being unable to warp people who are standing on it + on the moment it triggers. [Skotlex] + * Fixed @follow stopping the moment you are warped. [Skotlex] + * Fixed pc_additem messing with the equip field of the passed item data. + Fixes the famous "equip stuff on your arrow slot" bug. [Skotlex] + * Fixed cart-termination crashing the server if you used level 16 of it. + [Skotlex] + * Fixed check_connect_login_server check in char-sql server. Fixes + char-server not reconnecting to the login server. [Skotlex] + * Login-sql server will no longer change an account's state to "7" when + banning a player. This should fix being able to use @ban to clear out a + @blocked player. Players will now be identified as banned only through the + banned-until timestamp. [Skotlex] + * Fixed a crash when using Gospel... [Skotlex] + * The on-place function won't be invoked on setting ground skills if the + group's tick is greater than the current tick. As Buuyo pointed out, this + should fix Sanctuary and Gospel taking effect inmediately instead of after + "x" amount of ms as they should. [Skotlex] + * Added login-char packet 0x2737. Sets all characters offline (login-server + side). [Skotlex] + * Cleaned up char server "set all offline" implementation to remove only + characters from the map-server from which the packet was invoked. It will + also now correctly kick/set-character offline from the map-server if they + are connected. [Skotlex] + * Cleaned up the char-sql reconnect code. It no longer sets everyone to + offline. [Skotlex] + * Removed setting "kick_on_disconnect", servers will no longer kick + characters out when there's a disconnection. Instead, it'll use the most + logical approach: Set characters into a "lost" state when there's a + disconnection, on reconnect, resent the list of online-characters, do a + sync, and let the difference be characters to be removed. Also, the + map-server won't release character data until it's saved and the ack + returns from the char-server to prevent data loss (all this data is resent + on reconnect for saving anyway). [Skotlex] + * Added a check in pc_equipitem so that when switching weapons and you have + the skill_range_by_weapon setting active, the skill info block (which + includes range) will be resent when the new weapon to equip has a range + different than the previous one. [Skotlex] + * One closer inspection, removed that clear in itemdb_reload for a foreach + call again. And modified itemdb_load to scrap the dummy item entry from the + item_db and replace it with proper data for the item. [Skotlex] + * itemdb_reload will clear the itemdb before reloading info instead of only + clearing the scripts now. [Skotlex] + * Some cleaning of skill_castend_pos2, fixed Gospel, and a + map_freeblock_unlock misplacement. [Skotlex] + * Sense/Estimation will now display the mob info window to all party + members in the same map. [Skotlex] +2006/07/08 + * Fixed the new addeff structure not working well with SC_STONE (because + SC_STONE is 0, which was by default not handled as a valid value). + [Skotlex] + * Added back the TF_MISS walking speed bonus to assassin type classes (how + did that got lost?) [Skotlex] + * Fixed mobinfo displaying exp as signed ints rather than unsigned. + [Skotlex] + * Added status_check_visibility to check if an object is within range of + view of another. Nothing more, nothing less. It's used by unit movement to + check whether you can continue chasing your target or not when the "chase + target" directive is given. [Skotlex] + * Fixed the char table having party/guild_id as smallint when they need int + there. Thanks to hermematon for pointing it out (use svn_ugprade7580.sql) + [Skotlex] + * Applied k3dt fixes to pet-hatching, ice-wall check, and wedding skills. + [Skotlex] + * Fixed endow skills calling the skill no damage packet twice. [Skotlex] + * Fixed a crash on warpwaitingpc when the chat-room is empty. [Skotlex] +2006/07/07 + * Fixed the Warm Skills [Skotlex] + * Removed the debug message when a player logs out and is removed from + memory, it is working fine (tested normal logging off and autotrade). [Skotlex] + * Corrected the pet-armor field of the pet not being updated on + equip/unequip of accessories, making them not show up inmediately. [Skotlex] + * Status_calc_bl will no longer stop you from attacking/walking when the + mode is changed unless the new mode no longer includes + "can-attack"/"can-move" respectively. [Skotlex] + * Should have fixed clif_item_sub to properly store pet egg/armor data. + There should be no more "random refine levels" bugs related to these. + [Skotlex] + * itemdb_exists will now return NULL for item_id 0. [Skotlex] + * Added a check to free a character from memory when changing map servers. + [Skotlex] + * Okay, added a chrif_save_ack packet to the char-server so now the map + server will know once a character was "final saved", and only then the + character will be removed from memory. On char-server reconnection, all + chars that are in final-save state are resent to save (if they are still in + memory, it's because the ack hasn't gotten here from the char-server). This + should effectively block all dupe problems due to heavy inter-server lag, + however as it's untested, it currently prints some debug messages when + people are saved and then removed from memory. Need testers so this can be + debugged and merged to stable! [Skotlex] + * Now, when the login-char connection is cut, the char-server won't set + everyone offline on reconnect, instead it will send the list of online + accounts to the login server. [Skotlex] + * Modified the error on the char-sql server to set chars online when it + receives a save packet from a character tagged as offline (until it can be + figured out why this is happening) [Skotlex] + * Fixed signed/unsigned comparison issues in the char txt/sql server. + [Skotlex] + * Fixed the cooking success chances. Thanks to Ishizu Chan. [Skotlex] + * Added a temporary band-aid to prevent executing the script of non-arrows + when they are equipped on the arrow-slot (until the actual cause of why + pc_unequipitem is not working correctly is discovered/fixed) [Skotlex] +2006/07/06 + * Modified the party_data structure on the map server to remove some + redundant data. Added a party_data structure on the char-server to hold a + more complete set of information about parties. Added to the party_member + structure the class of each member so that the map server can do the + appropiate checks even if the character is on another mapserver/offline. + Due to the format changes in the party structure, txt servers will have to + wipe their party file... (sql save format has not been changed) [Skotlex] + * Added function char_family to check if there's a family state given the + three character ids, instead of doing individual checks all the time. + [Skotlex] + * Rewrote all the item restriction functions so that they will take into + account slotted card restrictions as well. [Skotlex] + * Added no_skill_delay setting, when set, affected object types will have + the minimum skill delay for all skills. Defaults to mobs, since they + don't have skill delays. [Skotlex] + * Cleaned up pc_equipitem. When dual wielding or equipping accessories, if + the client actually specifies one of the two positions, it will be taken + into account (now, does the client actually does this?) [Skotlex] + * Fixed GrandCross and similar skills. [Skotlex] + * FogWall will now also affect the caster. [Skotlex] +2006/07/05 + * Updated NJ_KAENSIN by Saycyber21 [Vicious] + * Updated @refine to take account of MAX_REFINE, thanks to Omega... GM + Designer. [Skotlex] + - Also optimized the @refine loop for better performance. +2006/07/04 + * Fixed compile issue for NJ_BAKUENRYU, by Saycyber21. [Vicious] + * Implemented Saycyber21's some NJ work. Untested. :D [Vicious] + * Implemented cooking chances. Chance of success is 70% - 7*(dish-lv)% + + 12*(cooking set-lv)%. Exception: When using the legendary cooking set, + success chance is 100% regardless of dish. [Skotlex] + * Added battle config setting emergency_recall, specifies behaviour of that + skill (skill.conf): 0 - Disabled. 1 - can't be used in nowarpto maps. 2 - + Can be used everywhere. [Skotlex] + * Removed the NPC/Dance/Song inf2 check of AbraCadabra. whether a skill can + come out or not is entirely decided by the abra db file now. [Skotlex] + * Added structure s_addeffect to handle status change additions. Cleaned up + relevant code. It is now possible to specify ANY status change, not just + the basic ones. NOTE that the code is proof-read, but untested! [Skotlex] + * Added support for bonus3 bAddEff/bAddEffWhenHit as follows: [Skotlex] + bonus3 bAddEff/bAddEffWhenHit, <SC value>, <rate>, <target flag>. + Target flag is 0: Self. 1: Enemy. 2: Both. + * Added these descriptions to doc/item_bonus.txt [Skotlex] + * Added a check when joining a chat to make sure the target object is of + type BL_CHAT. [Skotlex] +2006/07/03 + * Cleared up the bAutoSpellWhenHit description in doc/item_bonus.txt + [Skotelx] + * Fixed Phantasmic Arrow and Magical Bullet not being correctly tagged as a + ranged arrow-type attack. [Skotlex] + * Updated help.txt and help2.txt, thanks to Inuyasha for providing the + updated files. [Skotlex] + * Char-server SQL won't perform the reconnect cleanup routines when + kick_on_disconnect is disabled. [Skotlex] + * Renamed summons_inherit_effects to summons_trigger_autospells as the + setting now only makes the attacks of the slaves trigger the autospells of + the master (as it should be). [Skotlex] + * Corrected code capping no_spawn_on_player to 50 when the max should be + 100. [Skotlex] + * Warmth will dispel when warping now (or else the effect is left on the + ground) [Skotlex] + * Fixed reading of the refine_db not working right when MAX_REFINE is + increased from 10. [Skotlex] + * Some more cleaning to the implementation of Abracadabra [Skotlex] + * Fixed a compile warning in login sql/txt [Skotlex] + * Fixed pc_makesavestatus not setting your logout position. [Skotlex] + * Fixed two dances becoming BA_DISSONANCE instead of DC_UGLYDANCE. + [Skotlex] + * Added the missing +100% damage modifier of Enchant Deadly Poison. + [Skotlex] + * Fixed SkillStatusChangeTable not working correctly for Homun/Guild + skills. [Skotlex] +2006/06/30 + * Fixed a typo in msg_athena.conf, "This item cannot be drop" -> "This item cannot be dropped" [MasterOfMuppets] + * Added a check to prevent equipped items from being traded. [Skotlex] + * Added UF_SONG (0x400) to differentiate songs from dances. [Skotlex] + * Added preliminar support for making a Song+Dance turn into BA_DISSONANCE + cells. Beware of potential bugs as it's untested. [Skotlex] + * Added mapflag "nochat" to prevent chatting rooms from being created. + [Skotlex] + * Corrected some of the sleep checks when the char id does not matches with + the char-id expected by the script engine. [Skotlex] + * Cleanup in itemheal related code, fixed the item heal group bonus not + working on Groups beyond 7. [Skotlex] + * Fixed pet's loot not being moved to your inventory on logout. [Skotlex] +2006/06/29 + * Made the map server send list of characters online to the char-server on + reconnection regardless of "kick_on_disconnect" setting, as otherwise, a + temporary disconnection would make the char-server tag all characters + offline and refuse to save them afterwards. [Skotlex] + * Fixed guild storage being "eternally in use" if you quit/logout before + closing it. [Skotlex] + * Ending SC_CLOAK/SC_HIDE/SC_CHASEWALK will now trigger ontouch npcs. + [Skotlex] + * [Fixed] + - Scripting system screwing up script position after mixing timers with menus. + - NPC attached AI mobs display as alive when dead. + - View data not updating after buildin_unitdeadsit. + [Improved] + - NPCE_LOADMAP to execute after all (area) objects are sent to the player. + - Simplified scripting system. sd will now use pointer to the script state itself. + [Lance] + +2006/06/28 + * changed: + dynamic_pass_failure_ban_how_many:from 3 to 7 + dynamic_pass_failure_ban_how_long:from 60 to 5 + as in official servers. [Musashiden] + * Added a check in script command "set_option" so that invoking + "set_option(0)" removes Cart/Peco/Falcon, as expected by scripts. [Skotlex] + * Added trade-range check on trade start. [Skotlex] + * Added inf2 4096 (INF2_ALLOW_ENEMY) which is to be used in conjunction + with INF2_PARTY_ONLY/INF2_GUILD_ONLY when said skill should ALSO be allowed + to be used on enemies. [Skotlex] + * Cleaned up a bit the code for @item [Skotlex] + * Fixed character/storage being sent to be saved TWICE when you logged out + while the storage is opened. [Skotlex] + * Added save_settings map config. Specifies after which events do + characters get saved (defaults to all): 1 - Trade successful, 2 - Vending + transaction, 4 - Closing storage/guild storage, 8 - hatching a pet. + [Skotlex] + * Changed the mob drop rate adjust function to receive a signed int + argument. Probably will fix those drops with 0% becoming 100% [Skotlex] + * Corrected Musical Strike having a different damage equation from Throw + Arrow. [Skotlex] + * Added state rewarp to players. It gets set when a pc_setpos call is + triggered while the player is changing maps so that when the player finish + loading the map, it is inmediately rewarped to where it has been + rewarped/recalled to. [Skotlex] +2006/06/27 + * Map server will now resent the whole list of online characters to + char-server on reconnect when the kick_on_disconnect setting is active. + [Skotlex] + * Cleaned up and optimized the IP sync code. New login_athena config + setting sync_ip_interval specifies how often to sync the ip. The default is + 0 (disabled). [Skotlex] + * Added mapflag "loadevent", now load-map script events will ONLY trigger + on maps with this mapflag on, rather than every map. [Skotlex] + * High Jump can now be used in all versus maps. [Skotlex] + * Added Kaite's opt3 value, taken from jA [Skotlex] + * Added state dirty == 2 to storages. Signals when a storage was sent for + final saving. Said storage is removed from memory after the ack from the + char-server, and they are sent to save if the map/char servers reconnect + before the ack arrives. In short: they are guaranteed to be saved after a + char logs out. [Skotlex] + * Put pay_arche.gat in the "no experience lost" mapflag file. [MasterOfMuppets] +2006/06/26 + * Corrected the element of hunter traps. [Skotlex] + * Deadly Poison now also reduces def2 by 25% [Skotlex] + * Cleaned up a bit skill_moonlit, Moonlit Petals should work correctly now. + [Skotlex] + * Fixed @mi displaying always 0 instead of the mob's class. [Skotlex] + * Rough implementation of Ground Drift according to description and jA + info. [Skotlex] + * Implemented Tatami Gaeshi using skill description and jA implementation + for reference. [Skotlex] + * Merged Mitternacht's max_heal/max_heal_lv config settings. [Skotlex] + * Removed support of packet 0xc3 on the new packet versions. Thanks to + Meruru for pointing out they aren't being used anymore. [Skotlex] + * Autospells will now again check for the skill's nk value, so that skills + tagged "nodamage" skills will not trigger autospells. [Skotlex] + * Corrected clif_item_sub so that pet eggs will correctly be sent as + equipment (fixes them showing up "broken" and with random refine levels) + [Skotlex] + * [Added]: + - buildin_unitkill just for kicks. [Lance] + +2006/06/23 + * [Optimized]: + - Setting of variables with defined scope in some frequently executed script + events. + [Added]: + - Missing script_require_trigger flags for some power hungry events. + * Updated mob_db.sql and item_db.sql to latest. [Skotlex] + * Modified pc_setoption so that it will correctly update sprite AND clothes + color when mounting/unmounting changing into/from xmas/wedding sprites. + [Skotlex] + * Allowed itemdb_exists to return the dummy item. Enables "invalid" items + to be sold, traded, dropped, etc. [Skotlex] + * Corrected ASC_BREAKER. Int-based damage is applied after attribute fixes + and before card reductions. The skill now completely disregards left + hand weapon. [Skotlex] + * Standarized PF_MEMORIZE to be 50% cast time on all skills (instead of + -50% for targetted skills and -66% for ground skills >.>) [Skotlex] + * Cleared up the comment on what item_check does and how it works. + [Skotlex] + * Changed setting for skill_nocast flag 16. It is no longer a "pk-mode map" + setting, it's now a clone-forbidden skill. That is, skills with the flag 16 + will never be copied by clones. If you use a PK-mode server, use flag 2 now + to forbid skills from common maps. [Skotlex] + * Default skills from not being cloned are Magnus Exorcism and Turn Undead. + * The map search free cell will now use the size of the map # of tries + before giving up when the spawn area is the whole map. Added a check to + inmediately give up when the number of spawn retries has reached the max + specified (no_spawn_onplayer = 100). [Skotlex] + * Cleaned up a bit the clone code to account for the unit flags + UF_NOPC/UF_NOMOB when the skill is not ground-based (accounts for self + skill that causes a ground-tile to be placed, like Dances). [Skotlex] + * Added pc_bonus_autospell_del, gives support for removing autospell + effects. When a negative rate is specified, it will decrease the chance of + casting (eg: You have two different cards with autospell Heal +20% each, + then do autospell -30. The second card will be cancelled, and the first one + will become Heal +10%) [Skotlex] + * npc_timers now will not restore the previous timer data when there's no + players attached (when it's strictly an npc timer). This should reenable + the old behaviour of getnpctimer returning the total ellapsed time since + "startnpctimer" even after the last label has been reached. However, this + behaviour won't apply to player-attached timers. [Skotlex] + * [Fixed]: + - MAPREGSQL overloading SQL table with temperory map registries. + - Incorrect perfomance calculation for MAPREGSQL loading and saving. [Lance] + +2006/06/22 + * Guessed and added support for the packets 0x22a (idle) and 0x22b (spawn). + This should complete the required packets for PACKETVER 7. [Skotlex] + * Added support for the PACKETVER 7 packets in the "dummy" current + intravision implementation. [Skotlex] + * Fixed @autoloot being off by 0.01% when entering a manual value. + [Skotlex] + * Restored the "Secret" behaviour of Blast Mine and Claymore Trap where + each target is hit N times (where N is the number of mobs in the splash + area at the moment of triggering). [Skotlex] + * Updated the tools/stackdump script to also handle sig-plugin generated + backtraces. Now it will also auto-determine whether the exe needs a .exe at + the end or not. Help me test it as I want this script on stable NOW :X + [Skotlex] + * Usage is "stackdump <login/char/map> <txt/sql> [number]". When a number + is given, sig-plugin stackdumps are assumed, otherwise it parses the normal + stackdump as before. [Skotlex] + * Corrected autoloot so that you can specify rate with decimal precision + ("@autoloot 0.01" should work) [Skotlex] +2006/06/21 + * [Removed]: + - Redundant mob name copying. (it's already copied in mob_parse_dataset) [Lance] + * [Fixed]: + - Compilation warnings and errors. + [Improved]: + - Changed and moved IP sync status messages to elaborate more. [Lance] + * Tested and fixed resolve_hostbyname. Applied said function around most of + the code where needed. Removed includes for the OS/network system pretty + much from every file (our socket.c file should handle this) [Skotlex] + * Made the GM mute request bypass the manner_system setting. [Skotlex] + * Applied use of parse_hostbyname() in chrif.c to fix compilation errors. + [Skotlex] + * status_percent_change will now account for when the target's max hp/sp is + above INT_MAX. [Skotlex] + * [Added]: + - DNS (WAN) sync for those pesky disconnections (dynamic ip renewal). [Lance] +2006/06/20 + * Some cleaning up of OPTION related code. OPTION_XMAS and OPTION_FLYING + really ARE the same value clientside! (totally stupid), therefore I've + opted from removing the flying animation since it really just displays as + Xmas for others (and the correct fix involves adding a bunch of + class-change packets...) [Skotlex] + * Updated skill_require_db to place the Zeny requirements of ZenyNage and + Fling. [Skotlex] + * Fixed crash when non-players use ZenyNage. Added the correct Zeny check + in skill_check_condition, fixed the skill so that it's damage is based on + whatever zeny is specified in skill_require_db. [Skotlex] + * Can-act delay will not be reset when warping now. [Skotlex] + * Fixed Quagmire not altering walking-speed. [Skotlex] + * Silence now blocks skills both on begin/end casting. [Skotlex] + * Updated status_calc_bl so that when walking speed changes, the character + is made to rewalk so that the new speed takes effect inmediately. [Skotlex] +2006/06/19 + * Added Ayothaya to nopenalty and nopvp mapflags. [Evera] + * Combo-used Skills with State "move_enable" will now override the "can't + move delay". Fixes Break-Fall -> Jump-Kick. [Skotlex] + * Some more cleanups of battle_calc_damage to account for absorbed damage + reductions. [Skotlex] + * Moved back Soul Drain code from mob_dead to skill_counter_additional_effect. + Now we are back to where the skill animation does not shows, but you DO + get SP T.T' [Skotlex] + * Some cleanups and corrections in battle.c to account for negative + (absorbed) damage. [Skotlex] + * Fixed fame-list updating crashing char-sql server when the given char-id + just got into ranking. [Skotlex] + * Added missing Arunafeltz maps with information from NLZ [Evera] +2006/06/18 + * [Fixed]: + - Typo in status.c add_sc() using 'skill' instead of 'sk' as index, resulting in + filling the SkillStatusChangeTableArray with junk data. + - > NEEDS CONFIRMATION < Ends casting if player is knocked with freezing/stun/whatever + - Typo in parse_frommap. [Lance] + * [Fixed]: + - clif_initialstatus using SHRT_MAX instead of USHRT_MAX for status_point. + * [Temperory Fixed]: + - Crashing of SQL char-server in parse_frommap case 0x2b01. [Lance] + * [Removed]: + - Large part of scripted mob control commands are removed. + - Large part of scripted player control commands are removed. + - Scripted mob slaves changing master ID. + [Added]: + - Unit control commands. + - CALLBACK_NPCCLICK for scripted mobs, added this to db/const.txt too. + - Macro RECURSIVE_MASTER_CHECK in battle.c + [Modified]: + - buildin_skilluseid and buildin_skillusepos -> buildin_unitskilluseid + and buildin_unitskillusepos. + - md->callback_flag to short (double word). [Lance] + +2006/06/17 + * Devotion absorbed damage will now appear to come from oneself (instead of + the original attacker changing directions towards the Crusader) [Skotlex] + * Updated clif_refres to send inventory, cart, and weight info. [Skotlex] + * Fixed intif_guild_memberinfoshort to not leave a dangling pointer when + someone logs out <.< [Skotlex] + * Changed some mapflags related to the eye of hellion quest. [MasterOfMuppets] + * [Added]: + - buildin_checkcell, buildin_mobwarp, buildin_pcattack. + [Improved]: + - buildin_skilluseid and buildin_skillusepos to accept a few more arguments. + - mob_script_callback to return sucess value [Lance] + * Fixed the party HP packets to send max HP 10000 and scale HP accordingly + when the player's HP doesn't fits in the packet's field. Fixes HP bars not + correctly displaying the % of life when max HP is above 32k. [Skotlex] + +2006/06/16 + * Fixed option value being reset'ed on login (fixes cart/peco/falcon being + lost) [Skotlex] + * Corrected @speed to alter your base speed instead of battle one. Means + the change remains for much longer (until status_calc_pc is invoked, which + could be due to equipping/unequipping stuff) [Skotlex] + * Modified the bNoMagicDamage/bNoWeaponDamage bonuses to be a 0-100 + setting. Meaning you can do bonus bNoMagicDamage,50; To make all magic + damage be reduced by half. This bonus stack, so two cards with + bNoMagicDamage,50 will give magic immunity. [Skotlex] + * Removed setting gtb_pvp_only and replaced it with gtb_sc_immunity which + specifies the threshold before the bNoMagicDamage starts blocking support + statuses as well. ie: gtb_sc_imunity: 75 will mean that "bonus + bNoMagicDamage,70;" reduces magic damage by 70%, but does not blocks heal + or support status, while "bonus bNoMagicDamage,80;" does. [Skotlex] + * Removed db_tables.sql as it's no longer used. [Skotlex] + * the mvp_sd is removed when the mob is the emperium and there's no + killer/exp-awarded (assumed killed by script), this prevents the on-kill + event from triggering and giving the castle to whoever damaged the most the + emperium without destroying it. [Skotlex] + * [Added]: + - Custom slave mobs to inherit the callback_flag. + - Added option #25 to buildin_setmobdata to set the callback_flag. [Lance] + * [Improved]: + - Cleaned up Custom Mob Script Callback codes. Looks much better now :B. [Lance] + +2006/06/15 + * [Fixed]: + - intif_parse_RenamePetOk for not compatible with ANSI-C initialzation specification. + [Lance] + * Added indexes for loginlog and ipbanlist as they did not have any. + (note, someone already put the index on loginlog on trunk.) [Euph] + * Merged Adam's patch to let the char-server handle validation of + pet-name-change requests through the allowed char letters config. [Skotlex] + * Fixed "wedding_ignore_palette: yes" not working when relogging with the + gear already equipped. [Skotlex] + * Added blocking of the Kick skills when you are a Soul Linker. [Skotlex] + * Added enabling to turn off a kick-stance regardless of class. [Skotlex] + * Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas + options. [Skotlex] + * Added back OPTION_XMAS, but the actual value is missing! [Skotlex] + * Corrected chrif_save so that the player is not set offline on map-change. + [Skotlex] + * Added change-look support in pc_setoption when specifying OPTION_XMAS + [Skotlex] + * Fixed clif_parse_RemoveOption removing all options instead of just + Falcon/Cart/Peco [Skotlex] + * Fixed clif_send not sending packets to SELF when specifying AREA if the + source is not on the map yet. [Skotlex] + * Fixed and cleaned up script command 'equip' [Skotlex] + * Fixed 'autoequip' items. [Skotlex] + * Fixed Aspd not being updated in your status window after Agi/Dex + increasing statuses take effect. [Skotlex] +2006/06/14 + * Fixed map_nick2sd so that searching for "Adam" will not match a char + named "Adam Smith". Thanks to Adam for reporting it out. [Skotlex] + * Modified how luk reduces status changes by reducing the gap. Eg: resist = + vit; resist += (max - resist)*luk/300; [Skotlex] + * Added battle settings pc_max_sc_luk/mob_max_sc_luk to handle which is the + luk threshold at which you gain inmunity (defaults to 300). [Skotlex] + * Fixed buildin_getmobdata. It was trying to handle the first parameter as the + array to fill in. [blackhole89] + * Blocked again skill usage during marionette. [Skotlex] + * Fixed main.sql adding a key on char_id rather than account_id for the + char table. [Skotlex] + * Cleaned up character saving in char-sql, it no longer needs to query the + database to see if the player exists on each char-save, instead it checks + the received data against the online-players db. No such fix is required + for char-txt. [Skotlex] + * Added an error message on the char-server when the received player data + size does not matches with the expected size (should avoid the crash that + happens on such a memcpy). [Skotlex] + * [Improved]: + - script_save_mapreg for MapregSQL Saving to display perfomance only in slow + queries. [Lance] +2006/06/13 + * Updated mob_db.sql and item_db.sql to latest. [Skotlex] + * Added account_id index to char table. Thanks to Buuyo for reporting it. + Sql users apply upgrade_svn7146.sql NOW. [Skotlex] + * Marionette and Devotion will now check raw distance and ignore obstacles + and the like. [Skotlex] + * Added irc_channel_pass setting and prevent crashing when irc server + lookup by host fails. Thanks to Trancid for the details. [Skotlex] + * [Fixed]: + - clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping. + [Lance] + * Added support for reading correctly status change data from Guild and + Homun skills. [Skotlex] + * Added support for reading Homun skill data (which means the HM skills are + now safe to add to skill_db, skill_require_db, etc) [Skotlex] + * Oppositions can't be made during WoE now. [Skotlex] + * Fixed a few compiler warnings from VC [Skotlex] + * Commented out the Homunculus Skills<->Status Change link which was + causing some memory corruptions. [Skotlex] +2006/06/12 + * [Fixed]: + - buildin_npcshopitem not allocating extra 1 block of terminator. + [Added]: + - Modified versions of Dj-Yhn's buildin_npcshopdelitem and buildin_npcshopadditem + [Lance] + * Updated clif_disp_onlyself to not use dynamic memory and write directly + to the player's buffer. [Skotlex] + * Updated @noask to also tell the user what he has just rejected (added + msg_athena entries for each of the different requests). Also updated it to + use clif_disp_onlyself. [Skotlex] + * Fixed a pair of missing initializers in the clif storage functions. + [Skotlex] + * @heal no longer displays a healing animation. Fixes the client believing + you couldn't be healed more than 32K. [Skotlex] + * Now you can use any skills (except encore/dancing ones) while under + Longing for Freeding. [Skotlex] + * Now you can use any skills while under Marionette Control. [Skotlex] + * Fixed npc_checknear's distance check returning the opposite of what it + should (false when the range is correct and viceversa) [Skotlex] + * Added a warning on item loading when an item is of equippable type but + has no equippable position. [Skotlex] + * Turning an alliance to an opposition won't work now during WoE [Skotlex] + * Slaves can summon other mobs now. The only ones who can't do this are + player summoned mobs. [Skotlex] + * Merged the following functions for faster processing of items: [Skotlex] + clif_storageitemlist + clif_storageequiplist = clif_storagelist + clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist + clif_itemlist + clif_equiplist = clif_inventorylist + Note that the changes are a bit substantial and need proper testing! + * Increased max knockback value support to 25. [Skotlex] + * [Optimized]: + - buildin_npcshopitem memory allocation to calculate before reallocating. + [Lance] + * Made guild member exp an unsigned int. [Skotlex] + * Various cleanups to the npc clicking related functions. Should fix quite + some possible crashes from crafted packets. [Skotlex] + * Added overflow checks for bonus settings mdef_rate/def_rate. [Skotlex] + * Added missing update of INT after a buf. [Skotlex] + * Small cleanup of how SC_BLEEDING works. [Skotlex] + * Fixed party_foreach_samemap invoking the function on the CASTER instead + of on the party members. [Skotlex] + * Modified clif_parse_NpcClicked to handle the different situations with + different bl-objects (attack on players/mobs, click on npcs or mobs with + npc attached) [Skotlex] +2006/06/09 + * [Fixed] + - Compilation warnings on guild.c and int_guild.c [Lance] + * Added structure party_data and party_member_data to the map server to + hold party-specific required information about parties including + Monk/TK/SG/SN states and party member count. Family information is still + missing, and handling of the state should probably be done by the + char-server, too... [Skotlex] + * party Hp updates are no longer done each time the Hp is modified, but + together with the party xy timer. It means HP-bars will be a bit delayed + before being updated, but packet consumption should be much less during + heated battles. [Skotlex] + * Fixed MoM's typo [Vicious] + * Fixed map_readafm missing strcpy(afm_name, m->name). [Skotlex] + * [Improved]: + - npc_click interception on BL_MOB and BL_PC to let sd act accordingly. + [Lance] + * [Fixed]: + - Execution of sleep/sleep2 more than once will hang the script_state. + [Lance] + * Fixed @mapinfo displaying incorrectly maps with nosave which send you + back to your last savepoint. [Skotlex] + * Moved guild_exp_rate from a mapserver battle config setting to a char + server config. It no longer modifies the total taxed exp as seen on the + guild information window, but directly modifies the exp that the guild + earns. [Skotlex] + * Added an error report and correction when the map server receives a guild + from the char-server with more guild members than MAX_GUILD. [Skotlex] + * Changed the interval between waterballs back to 125 [MasterOfMuppets] + * Fixed a typo in char_sql/char.c, thanks to Euph [MasterOfMuppets] +2006/06/08 + * Modified guild exp to be an unsigned int rather than a signed one. + [Skotlex] + * Fixed @skilltree printing out Unknown job for most targets used. + [Skotlex] + * Cleaned clif_pvpset to not send the packet to nearby characters when the + source is GM-hidden. May help fix the crash on PvP with gm-hidden + characters. [Skotlex] + * Modified map_freeblock_unlock so that aFree errors will report the + file/line that INVOKED the function rather than the function itself. + [Skotlex] + NOTE: Do NOT disable the memory manager as that will break this change. + This change is to be temporarily set until the afree'd error can be + resolved. + * Updated mob_npc_warp to a three-state config switch. 0 disables. 1 enable + only on warps that don't lead to nobranch maps. 2 - enable on all warps. + [Skotlex] + * Adjusted Don't Forget Me, Defender, Longing to use all val entries, and + to hold the speed adjustment value rather than speed penalty (eg: 125 + instead of 25). [Skotlex] + * Cleaned up status_calc_speed so that speed penalties are correctly + handled (eg: 25% penalty is speed*100/75, not +speed*25/100). Thanks to + Euph for pointing it out and Belle for the speed mechanics. [Skotlex] +2006/06/07 + * Fixed Sense using mdef instead of mdef2 [Skotlex] + * Fixed item-skills not showing up on login. [Skotlex] + * Cleaned up clif_parseLoadEndAck, by testing which packets are required + only on first-login and which ones are required on all map-changes. + Skill-tree, Exp, Skill Points and most of the basic status are no longer + sent on map-change (items, cart data and zeny still need to be sent one + very map-change). [Skotlex] + * Fixed the mob state not being set to Berserk/Angry correctly after the + mob reaches the target's location. [Skotlex] + * Added config setting mob_npc_warp, when set to yes, enables mobs to be + warped between maps when stepping on a npc-warp. [Skotlex] + * Added monster_ai setting &64, when enabled makes a mob run to any nearby + npc-warp when their current target has switched maps. [Skotlex] + * Added pc_calcexp to calculate individual exp bonuses acquired from exp's + source (race bonus cards, SG Exp skills, pk-mode higher level exp) [Skotlex] + * pc_gain_exp now also receives the source of the exp, when said source + exists, bonuses are applicated as needed. [Skotlex] + * Added status_kill when capturing a mob, should take care of the mob not + respawning after caputed. [Skotlex] + * Fixed item info not displaying the found item id [Skotlex] + * Fixed item info not displaying the weight value properly. [Skotlex] + * Adjusted status resistances and durations taking as base Viccious's info + from the kro guidebook. [Skotlex] + * Moved souldrain code from skill_counter_additional_effect to mob_dead. It + should display the skill animation correctly now. [Skotlex] + * Adjusted several sc rate/time reductions as pointed out by Playtester. + [Skotlex] + - Luk now plays a luk/10 reduction role rather than a luk/3 one. + * Removed char_nick2id from char-sql server as it's no longer needed. + [Skotlex] + * Fixed quitting the map server not properly saving the storage before + deleting it. Thanks to Adam for pointing it out. [Skotlex] + * Cleaned status_get_sc_tick/status_get_sc_def to use the status_data + function. [Skotlex] + * SC_STOP's chance and duration can't be reduced anymore. [Skotlex] + * Storm Gust no longer has a 100% chance to freeze by passing mdef, now it + has a 300% base chance reduced by mdef and the like as explained out by + Tharis. [Skotlex] + * Frost Diver/Frost Nova's base freezing chance is no longer affected by + target's int. [Skotlex] + * [Improved]: + - mob_dead not to remove script controlled monsters with player sprites. + [Added]: + - buildin_mobdeadsit :D [Lance] + * [Fixed]: + - temp++ gets issued before if(mvp_damage<(unsigned int)md->dmglog[i].dmg) in + mob_damage. Thanks to seahorsix. [Lance] + * [Fixed]: + - Corrected login-server SQL to use *((ulong *)p) instead of (ulong)p [Lance] + * [Optimized]: + - list and size not being initialized (size get intialized in default: switch case) + Eliminated default case and initialized list and size at the beginning. [Lance] +2006/06/06 + * Hopefully fixed for sure mobs getting extra stats when changing-class due + to the mobs level up setting. [Skotlex] + * Removed a piece of code that should no longer be needed due to the + combo-skill setting (inf = self, inf2 = no-target-self) which is blocking + self-skills from being used on others (pets/mobs should be allowed to do + that) [Skotlex] + * Added a status_check_skilluse call in Sightblaster to prevent it from + hitting hidden/cloaked/act-dead/etc players. [Skotlex] + * Fixed firewall counter going down by 2 each hit rather than 1. [Skotlex] + * Fixed Soul Burn not zapping away all SP. [Skotlex] + * The monsters can level up setting will not take effect when the mob's + level is LESS than their db counter-part (should prevent under-leveling + causing underflows and semi-immortal mobs) [Skotlex] + * Fixed mvp-exp calculations being messed up with more than one attacker. + [Skotlex] + * Changed the mob exp race bonus so that each player gets their own bonus, + rather than the killer's bonus applying to everyone. Still not the + "correct" way, but one step closer to it. [Skotlex] + * [Fixed]: + - Allocation of event_list in guild_npc_request_info to aCalloc so + memcpy(ev->name,event,strlen(event)) will have a null terminator. [Lance] +2006/06/05 + * Fixed a crash when using SL_SMA and the "combo" ain't ready. [Skotlex] + * Hopefully fixed changing a mob's class causing them to get all sort of + stat bonuses due to the mobs-level-up setting. [Skotlex] + * Changed hit, flee, cri, flee2, def2 and mdef2 to signed short, def, mdef + to signed char to correctly account for cards with penalties in said stats. + [Skotlex] + * Fog of Wall won't affect the caster now in any way. [Skotlex] + * Added clif_fixpos packets before attacking for the first time to clear + any position sync issues with the client. [Skotlex] + * Fixed skill_unitsetting using layout->count for the for instead of + group->count [Skotlex] + * Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly + increase dex/agi by 40% per level. [Skotlex] + * Fixed char-sql server not deleting character variables when deleting a + char. [Skotlex] + * Corrected cloaking not ending on attack if you are near a wall. [Skotlex] + * Updated pc_bonus to use cap_value on all status_data modifiers to prevent + overflows/underflows. [Skotlex] +2006/06/03 + * Fixed @mi/@mobinfo not showing the name collumns correcly [shadow] + * Solved the bug that made firewalls only castable a few times until [MasterOfMuppets] + you relogged. Thanks to Euph for the fix. + * Added variable other_mapserver_count to chrif.c which holds total count + of connected map-servers. By using this we prevent sending unnecessary + packets to the char-server when there's no more map-servers connected. + [Skotlex] + - Affected packets are whispers, announces, party messages, guild messages. +2006/06/02 + * Fixed Visual Studio 7.1 Solution File (Login TXT and Map TXT were removed) + * Fixed a bug in unit_can_reach_bl which breaks path seeking when the + target is near obstacles. [Skotlex] + * Updated offensive use of Sanctuary to function like on the official servers [MasterOfMuppets] + * Changed the interval between waterballs from 150 to 250 milliseconds [MasterOfMuppets] + * Corrected clif_parse_takeitem to ALWAYS return a NAK packet when it + fails. Fixes cases where the client gets "stuck" and refuses to let you + pick any items. [Skotlex] + * Removed the walk delay from firewall and changed its knockback [MasterOfMuppets] + to 1 tile to make it act more like in the official servers. + * Some cleaning of the mob slave ai. [Skotlex] + * Corrected Brandish Spear to work on levels above 10. [Skotlex] + * Updated Two-HandQuicken, One-HandQuicken to give 30 +2*lv% aspd-rate for + skill levels above 10 (meant for boss casted skills) [Skotlex] + * Fixed Spear-Quicken messing with the calc_flag [Skotlex] + * Fixed Freeze/Stone/Benedictio not changing your elemental LEVEL to 1. + [Skotlex] + * [Fixed] + - Yet another compilation warning. [Lance] +2006/06/01 + * Altered status_calc_pc so that equipment scripts are ran before + card-scripts. [Skotlex] + * Fixed pc_bonus to not underflow/overflow when adjusting def/mdef. + [Skotlex] + - These two together, should fix Tao Gunka Card. + * npc_debug_warps() will now be invoked if warp_point_debug is set. + [Skotlex] + * Updated item_db.sql/mob_db.sql to current. [Skotlex] + * Fixed NPC_SELFDESTRUCTION not showing nor dealing damage. [Skotlex] + * NPC_TRANSFORMATION/NPC_METAMORPHOSIS will now preserve the original mob + without removing it when the skill level is greater than one. [Skotlex] + * Added SC_DANCING declaration in the Status Change tables to signal it + modifies Walk speed. [Skotlex] + * Fixed pc_damage setting your canlog_tick even if the damage has no source + (eg: poison, berserk) [Skotlex] + * Berserk's aspd bonus now stacks with other aspd bonuses, but is still + affected by Quagmire/Forget-me-not. [Skotlex] + * Corrected setting slaves_inherit_mode to not apply to morphosis skills. + [Skotlex] + * Corrected pc_setoption to invoke status_calc_pc when getting/removing the + cart. [Skotlex] + * Fixed @mobinfo displaying the wrong element. [Skotlex] + * Fixed Autoblitz taking into account target's luck rather than attacker's + [Skotlex] + * Fixed slaves warping endlessly to their master when the master-slave + distance exceeds 30. [Skotlex] + * SC_ORCISH will now be dispelled on logout (if debufF_on_logout is set) + [Skotlex] + * Removed attackrange/attackrange_ from TBL_PC, corrected clif.c using the + incorrect range variable. [Skotlex] + * You can now equip/unequip stuff while the storage is open. [Skotlex] +2006/05/31 + * Fixed Soul Drain not really giving you SP [Skotlex] + * [Fixed]: + - Suppressed compilation warning in chrif.c [Lance] + * [Fixed]: + - Guys can't go across map-servers :( [Lance] + * [Fixed]: + - Restoration and saving of sd->npc_id must be done every time. [Lance] + * Added back the Freeze/Petrify adjustments of -50%def and +25%mdef (when + where these lost?). Thanks to Buuyo for pointing it out. [Skotlex] + * Corrected the mob_ai&2 setting triggering rude-attacked due to can't walk + delay. [Skotlex] + * Made the char_name_option char_athena.conf setting apply to parties and + guilds as well. It cannot be applied to pets yet without adding a + change-name-request interserver packet. [Skotlex] + * Moved the JOB_* defines from map.h to mmo.h, update char.c to use them. + [Skotlex] + * Added function char_read_fame_list for famelist reading. Invoked it on + init, and made it be sent automatically to connecting map servers. + [Skotlex] + * Some cleaning of the fame-list reading code. [Skotlex] + * Some cleaning of the fame-update code, fixed a logic bug which made the + ranking list fail to display the correct ranker names. [Skotlex] + * Removed typedef bool from socket.h and included cbasetypes.c instead. + [Skotlex] + * Cleaned up and corrected the calculation of hit/flee/cri/lucky dodge in + status_calc_bl. [Skotlex] + * [Fixed]: + - Incorrect SQL syntax in login.c (missing collumn) [Lance] + * [Improved]: + - SQL upgrade file for the new loginlog. Thanks to ultramage. [Lance] + * [Fixed]: + - nullpo in pet.c caused by equipping without checking if the pet is available. + [Lance] + * [Fixed]: + - Latest client support completed! [Lance] + * [Fixed]: + - Missing #include for cbasetypes.h in login server SQL. + - Logic errors in run_script [Lance] + * [Added]: + - Partial support for latest login packet. But it seems to have a new security + module. [Lance] +2006/05/30 + * [Improved]: + - Fake NPC interface to use real NPCs. + - Scripting interface to restore and save sd->npc_id. [Lance] + * Added function pc_check_skilltree for checking if you unlocked new + tree-skills when raising non-passive skills. [Skotlex] + * Fixed flee/hit calculation in status_calc_bl to account for bonuses from + the base status. [Skotlex] + * [Fixed]: + - Compatibility problems in login.c [Lance] + * Fixed pets ignoring can-act delays for skill usage. [Skotlex] + * [Added]: + - Mercenary.c in VS.NET 2005 project files + [Improved]: + - loginlog using unsigned long `ip` field. + (Please check for compatibility problems). [Lance] + * Fixed status_calc_pc not zero'ing ALL vars it should, allowing certain + bonuses (like effect-on-hit) to stack. [Skotlex] + * slaves inherit speed setting will now work regardless of whether the + slave or master has the MD_CANMOVE mode bit. [Skotlex] + * Call Slave now invokes slaves on a 5x5 area around master. [Skotlex] + * AL_TELEPORT will fail when used by slave mobs. [Skotlex] + * Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable + attacks. [Skotlex] + * Fixed status_damage not setting your HP to 0 when you died [Skotlex] + * Fixed the pcbonus2 warnings using the wrong value before printing the + invalid Element error. [Skotlex] + * Fixed underflow issues when calculating dmotion. [Skotlex] + * Fixed Absorb Spirit Spheres [Skotlex] + * Added battle_config min_chat_delay (default 0, battle/client.conf) + specifies in ms what is the min delay between player sent chats + (whisper/global/party/guild). Messages that exceed this threshold are + silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the + player?) [Skotlex] + * [Fixed]: + - signed/usigned problem in sprintf and fscanf @ mercenary.c [Lance] + * Rewrote/cleaned up @petfriendly. [Skotlex] + * Cleaned up final part of status_calc_pc (flags 2/4 do not exist) [Skotlex] + * Updated attr_fix_table reading code to account for ELE_MAX (will + correctly read bigger elemental tables if ELE_MAX is changed) [Skotlex] + * Aggressive mobs will now use battle_check_range rather than mob_can_reach + to decide whether to lock-on or not to a target within sight-range. [Skotlex] + * Added warnings in mob_readdb when the mob's element is invalid. [Skotlex] + * Added error messages in pc_bonus* functions when an invalid element is + passed to the relevant bonuses. [Skotlex] + * [Optimized]: + - clif_specialeffect to use the enums. + [Improved]: + - buildin_specialeffect and buildin_specialeffect2 to accept effect area + definition. [Lance] + * [Added]: + - Visual Studio .NET 2003 includes for mercenary.c [Lance] + * Removed the on-die specific code from unit_remove_map and placed it on + the corresponding *_dead functions. unit_remove_map should never assume the + char died, it is just a "remove from map" function. [Skotlex] + * Updated status_damage to handle the general death code (clearing status + changes, clearing skill related data, sending death packet, etc). The + return value from the *_dead functions will tell it what to do or not with + the object (death aborted, clear it from map/memory, etc) [Skotlex] + * Cleaned up pc_dead to take advantage of the fact that status changes are + not ended until after the function. [Skotlex] + * Disabled ontouch npcs triggering on hidden/chase-walk characters. + [Skotlex] + * Updated/adapted current Homun code to use the status_data update. + [Skotlex] + * Updated map-server Makefile to compile mercenary.* files. [Skotlex] + * [Fixed]: + - Pets attacking even master is dead. [Lance] + * Fixed battle_calc_weapon_attack damage capping damage to a minimum of 0 + (negative values should be allowed when attack is absorbed by target's + element) [Skotlex] +2006/05/29 + * [Fixed]: + - Missing ';' in item #4358 [Lance] + * [Fixed]: + - Missing maps in map index database. [Lance] + * [Fixed]: + - Battle mechanics in battle_check_target [Lance] + * [Fixed]: + - Typo in mob_dead causing crash. Thanks to reddozen and his gang for testing. + [Lance] + * Cleaned up friend list saving and fixed loading of friends.txt file + (char-txt) [Skotlex] + * Added the Arunafeltz maps, not tested yet [Playtester] + - someone with an up-to-date client should test them + * Fixed pc_gainexp resetting your exp to 0 rather than adding it in... + [Skotlex] + * Corrected aspd calculation code to avoid negative overflows. [Skotlex] + * Fixed battle_check_target check on BCT_ALL to check versus BL_CHAR + instead of BL_PC and BL_MOB [Skotlex] + * [Fixed]: + - Declaration of int map_getcellp(struct map_data*,int,int,cell_t); [Lance] + * Removed Undead being inmune to poison status. [Skotlex] + * Removed speed penalty from SC_SKA [Skotlex] + * Fixed SC_SPURT triggering on Soul Linkers. [Skotlex] + * SC_DODGE won't be dispelled on death now. [Skotlex] + * [Fixed]: + - pc_follow_timer possible triggering crash. + - pc_reg_received to use battle_status.hp instead of status.hp + [Added]: + - macro map_id2index for non-cyptic mapid to mapindex conversion. [Lance] + * Added a division by zero check in mob_dead to prevent the (impossible) + case where a mob dies with received damage of zero. [Skotlex] + * Modified skill_get_range2 to return range 9 for skills with range 0 for + Non-Players. This usually signals Self skills, and mobs/pets should be able + to use them in other characters. [Skotlex] + * Optimized a bit the SC_PROVOKE code (to use val3/val4) [Skotlex] + * Fixed draining when the amount drained is negative (invoke zap rather + than heal) [Skotlex] + * Implemented GS_FLING as per the current skill description. [Skotlex] + * Fixed pc_readparam/pc_setparam to use battle_status.hp/sp rather than + status.hp/sp, fixes scripts reading the wrong Hp/Sp values [Skotlex] + * Added some missing SC_* entries on the initial listing (potion related + and speed up ones) [Skotlex] + * Fixed function declaration of map_getcellp() [Skotlex] + * [Fixed]: + - status.c:920: warning: 'mbl' might be used uninitialized in this function + - skill.c:6648: warning: 'matk_min' might be used uninitialized in this function + - skill.c:6648: warning: 'matk_max' might be used uninitialized in this function + - skill.c:2826: warning: 'sid' might be used uninitialized in this function [Lance] + * [Optimized]: + - Removed unused variable (account_id) in storage_guild_storagesaved. + * [Optimized]: + - Removed unused checks for unsigned data type and possible logic error for + char type (gcc treats char as unsigned). [Lance] + * [Fixed]: + - Relogging in with 0 HP didn't trigger dead event. [Lance] +2006/05/28 + * Added functions status_revive, pc_revive and mob_revive to handle revival + (it doesn't handles player respawning, though). Fixed reviving @ commands. + [Skotlex] + * Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes + Bladestop causing an unknown status change message). [Skotlex] + * Fixed MSS_DEAD state skills not triggering. [Skotlex] + * Changed undeads to by default always sustain 100% of the damage from firewalls [MasterOfMuppets] + * [Fixed]: + - script functions that doesn't pass references, thanks to End_of_exam. [Lance] + * [Protected]: + - clif_parse_LGMmessage from possible hacks [Lance] + * Fixed unable to store n items into storage unless n was the total amount + of items you had. [Skotlex] + * Suppressed compilation warnings (unsigned and signed mismatches) [Lance] +2006/05/27 + * Added structure status_data which holds status-related information (str, + agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc) + and weapon_atk structure with the weapon specific info (atk, atk2, element) + to be used by all combat structures (TODO: Homun needs to be updated to use + it). This in change involves a LOT of changes throughout the code and many + optimizations were done as well. Partial list (see svn changelog for complete + changes): [Skotlex] + - NOTE: Changes are substantial! I tested a bunch of stuff and all the + skills I changed the most, but it is possible there are unnoticed bugs + remaining to fix! + - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data. + - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead + - Added status functions to deal with damage and healing (status_damage, + status_heal, status_percent_change) and a bunch of defines for easier + handling of them (status_percent_heal, status_percent_damage, + status_fix_damage, status_kill, etc). Objects must be hurt/healed through + THIS, pc_damage/mob_damage most no longer be directly invoked! + - Rewrote and cleaned up battle_calc_misc_attack + - Merged config options pc_attack_attr_none, mob_attack_attr_none, + pet_attack_attr_none into attack_attr_none (type 4) + - Removed config options player_defense_type, monster_defense_type, + pet_defense_type in favor of weapon_defense_type + - Modified skill_calc_heal to take into account the MEDITATION bonus. + - Modified Slim Pitcher so it will work when casted by non-players. Will + now also work with SP-healing items. + - Rewrote Freedom of Cast code to use function status_freecast_switch to + switch adelay/speed when cast begins/ends. + - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for + easier updating when used in conjunction with ground skills. + - Fixed Asura Strike being usable from within a combo regardless of combo skill. + - Added status_calc_bl which does status-change related calculations using + as base the base_status of the bl object and the SCB_* flag passed. This is + invoked on status changes, and status_calc_pc will no longer be invoked + (which results on much faster status-change calculations). + - pc_clean_skilltree will now also remove item-granted skills. + - Learning skills will now only invoke status_calc_pc when the skill is passive. + - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related + packets and functions ONCE regardless of skill-levls earned. + - Cleaned up pc_ regen related functions. + - Made player-sprite mobs have item pickup animation and walkdelay when taking items. + - Clones will copy a player's base status rather than battle status (so + status-change alterations are not cloned) +2006/05/26 + * Part B of the homunculus code. [blackhole89] + While most of the homunculus handling functions are in now, it still lacks + code required for players to create it. + Given I haven't screwed up, you could master yourself one through the DB though. + * Fixed crashing in mob.c [Lance] + * Patches to allow everything to work right. + 1 more sample script. [Lance] + * Mob control engine tested 99% working so far. [Lance] + * Change scripting engine's NPC scope vars to dot (.) style. + * Improved and (should be fully) fixed the mob control engine. [Lance] + * Fixed typos in char.c [Lance] + * Rewrote fame rank lists system to reduce char-server load, as requested by + Skotlex: now it has a copy of those lists, and updates only the proper one + when needed instead of rebuilding all from saves everytime (which required + to always save the character before rebuilding the lists) [DracoRPG] + - Note it hasn't been compiled nor tested with SQL, please do it for me +2006/05/25 + * Simplified ASC_BREAKER by making it a BF_WEAPON attack with an additional + int-based damage component (which is added right before elemental + modifiers) as described by AuronX. Pending further refining. [Skotlex] + * Resolved differences between Stable/Trunk msg_athena.conf. [Lupus] + Fixed atcommand @request MSG numbers accordinly. + On adding new MSG strings, plzm reserve them in STABLE msg_athena.conf, too + * Added NoVending mapflag. You may disable vending in the streets [Lupus] + * Increased capacity for Account Variables to 64 [Skotlex] + * Reverted Intravision implementation to that of stable's. [Skotlex] + * Corrected Login Server taking it's first argument as both login config + and lan config. [Skotlex] + * Fixed mob control commands. + * Fixed memory leak in scripts (again). Still have a few lying. [Lance] +2006/05/24 + * Fix to the slave AI problem. [erKURITA], by [Skotlex], reported by Niktout. + * Item sharing now shares the same rules as exp sharing (no sharing when + dead, or idle, etc) [Skotlex] + * Fixed summoned slaves being able to cast onspawn summon-skills (slaves + aren't supposed to be able to call minions) [Skotlex] + * The clif_skill_poseffect packet will not be invoked in Snap unless the + skill was successful. May fix the client-position lag. [Skotlex] + * Merged item_db.sql from stable (the one from stable was more recent than + the one of trunk...) [Skotlex] + * Corrected SL KA* spells not working on other Soul Linkers. [Skotlex] + * Corrected a pair of incorrect sql query parsing logic in the login-sql + ban request packet. [Skotlex] +2006/05/23 + * Corrected mob angry mode, now it only "restores" itself after being hit + when the mob has no target within their range of sight rather than on + picking a new target. [Skotlex] + * Fixed wedding sprite where it would stay active after unequipping. [Zido] + * Some cleanup of run_script, should fix the memory leak there. [Skotlex] + * the charname request hack message has been downgraded to only include + GM-invisible characters. [Skotlex] + * corrected clif_charnameack to send negative ID when a disguised player + asks for it's own disguised name. [Skotlex] + * Cleaned up the disguised target-id checks taking into considering that + the only character that sees a negative ID is the same disguised character. + [Skotlex] + * Modified battle_calc_weapon_attack to use new flags pdef/pdef (pierce + defense), Investigate and Icepick will now use the final def/vit-def values + rather than the base ones. [Skotlex] + * The move-enable condition checks for skills are now checked for only when + on skill use, not at cast-end time. [Skotlex] + * Corrected clif parse name request failing on disguised characters [Skotlex] + * Corrected Soul Drain draining from all non-ground-based skills including + non-magic attacks. [Skotlex] + * Corrected pc_setoption to change the option and then change class. + changing option-wedding will automatically convert the view-class as well. + [Skotlex] + * Corrected the 15% drop rate increase when killing higher level mobs in + pk-mode triggering for all mobs with lower level than yourself. Thanks to + Vayu. [Skotlex] + * Fixed typo (this time it's not my fault) in script_reload() clearing the same + db each time o_o [Lance] + * Fixed sleep command. [Lance] + * Added 'setd' support for local NPC scope (') variables. [Lance] + * [Scripting Engine Update] New variables are ready to be used. [Lance] +2006/05/22 + * Updated skill_delayfix to return 0 for mobs since they have no skill + delay other than the one specified in mob_skill_db [Skotlex] + * Corrected the 20 lvl diff 15% exp bonus on pk_mode servers. Thanks to + Vayu for pointing it out. [Skotlex] + * status_get_sc_tick will now use directly Stun's formula rather than + invoking the status sc chance once. [Skotlex] + * Fixed a possible null pointer in script command misc_effect [Skotlex] + * Modified Investigate to take into consideration final def/vit-def rather + than base values for damage adjustment. [Skotlex] + * WARNING: New scripting system contains memory leak + TODO: Free all scripts using script_free_code() instead of old methods. [Lance] + * Excluded idle and auto-trade party members from TK_POWER list. [Lance] + * Fixed compilation errors. + Tidy up jobmaster for easy debugging. [Lance] +2006/05/21 + * Part A of the Homunculus code. + This only features the structures, status_* and clif_* (packets) and is + not functional yet in any conventional way, but doesn't interfere + with present functionality either. + Main purpose is helping me to keep my work organized. [blackhole89] + * Fixed the "fake" mute status bug. [Zido] + * Speed up array size calculation and deletion. [Lance] + * Player must learn the skill before doing auto-spell [Lance] + * Exploit prevention in clif_parse_NpcStringInput [Lance] + * SC_SPEARSQUICKEN -> SC_SPEARQUICKEN normalized enum name [Lupus] + * Thanks to damirych & Falcon for [2006/04/30] STEAL skill [Lupus] +2006/05/20 + * grfio_final moved back if any of GRF overriding is enabled so servers + with such configuration will not have different values after reloading. [Lance] + * jA1983 script.c buildin_menu fix. Thanks to End_of_exam. [Lance] + * Abit of alterations to login-server. [Lance] +2006/05/19 + * Minor unsigned/signed alteration in pc_additem to shut the compiler up. [Lance] + * Small change in pc_additem that could be fixing the current bug with new + items not getting added. [Skotlex] + * Fixed loginlog definition in main.sql, thanks to Tempesta [Skotlex] + * Likely fixed the mob-skill random picking behaviour causing infinite + loops sometimes. [Skotlex] + * Modified mobskill_use behaviour to pick a random starting point and check + skills from that, rather than always checking from first to last. Fixes + skills with high priority blocking skills lower down in the list from + triggering. [Skotlex] + * Updated mob ai behaviour so that mobs use IDLE state skills when their + current target cannot be reached for melee fighting. [Skotlex] +2006/05/18 + * Added 5 config settings to adjust damage in pk-mode servers (misc.conf) + [Skotlex] + * Fixed mob_max_skilllvl being capped to 11! [Skotlex] + * Rewrote/cleaned up several functions in storage.c [Skotlex] + * Optimized pc_additem comparisons to account for items with more than four + slots. [Skotlex] + * Updated clif.c to enable retrieval of items from cart/storage while + trading. Exception is retrieving items from the cart while vending. + [Skotlex] + - The reasoning is that an ongoing trade will not get "corrupted" if you + earn items before it is commited (only if you lose items from your + inventory), and it is an annoyance when you realize the stuff you want to + trade is on the cart/storage. + * skill reiteration code now does not checks for the trigger-area of the + skill in the case of non-players, which means mobs can now place traps in + cells adjacent to each other. [Skotlex] + * Applied an experimental weather code that should lower bandwidth usage to + near-none, which's only disadvantage should be the weather not clearing out + until moving to another map (even when the mapflag is removed from the + current map). Please test and report if there's any anomalies with it. + [Skotlex] + * NPC_AGIUP will now give movement boost of 50% [Skotlex] + * Fixed WZ_WATERBALL number of hits when used by non-players. [Skotlex] + * MO_BODYRELOCATION will send the slide packet with the actual src's + coordinates rather than selected tile. [Skotlex] +2006/05/17 + * Modified mob_can_changetarget to return true always when the new target + is the provoked-by character. Fixes provoke not making the mob change + target when it already is locked on another player. [Skotlex] + * Added check to clear previous skill when combo time ends. Should fix TK + Rankers being unable to initiate a combo with the same kick their previous + combo was finished with. [Skotlex] + * Power Up and Agi Up now increase Hit/Flee by 20%/lv [Skotlex] +2006/05/16 + * Modified "hide woe damage" to send the number of hits rather than 1 as + damage Because when the damage is less than the number of hits, the client + will display MISS. [Skotlex] + * Fire Pillar will now do 200%MATK damage per hit when level is >10. + [Skotlex] + * Blood Drain always hits now. [Skotlex] + * Fixed Mob Area Skills not updating their use-time (rendering their skill + delay useless) [Skotlex] + * Search free cell will now skip picking the center-tile as target + location. Will prevent slaves from walking on top of their master, or mobs + placing stuff right under themselves with the "around" target conditions + among other things. [Skotlex] +2006/05/15 + * Small changes to the skill.conf + - Monsters now can place ground skills on top of each other by default + - Land_Skill_Limit format changed and set to "Only Players" by default + * When reading mapflags, when a map is set to be pvp or gvg, the other will + be turned off (disables pvp mapflags in gvg maps for pk-servers) [Skotlex] + * Firepillar's damage per hit is now 100% MATK (rather than 20%) when the + skill level is above 10. [Skotlex] + * Sorted out the item_data structure, getiteminfo should work correctly + now. [Skotlex] + * KA* skills can now be casted on other Soul Linkers as well without the + Spirit requirement. [Skotlex] + * Soul Drain will now show the SP drained regardless of drain display + settings. [Skotlex] + * SC_COMBO state will now end in skill_attack rather than + skill_check_condition (as it is required there to apply damage bonuses + based on combo-casted skills) [Skotlex] + * Fixed Option_Wedding in const.txt (0x1000 won't work, it has to be 4096) + [Skotlex] + * Fixed the nocast flag 2 (not usable in pvp) returning true in pk-mode + servers. [Skotlex] + * When removing a castle's owning guild, the char servers will erase the + guardian data now. [Skotlex] + * Changed the behaviour of immobile mobs when they can't chase their + target. Rather than using a longrange skill and then unlocking, they will + use an attack/angry state skill and then unlock. [Skotlex] + * Some adjustments of how disguising + gm-hiding work together. [Skotlex] + * Fixed clif_GlobalMessage being the exact same function as clif_message + (the first should send to ALL_CLIENT and the later should send to + AREA_CHAT_WOS). Should fix globalmes script command. [Skotlex] + * Added SC_BLADESTOP to the switch listing in status_change_start [Skotlex] + * Characters in vending are now always considered "idle" if the + idle_no_share setting is active. [Skotlex] + * Players with OPTION_INVISIBLE should not be sent to clients. [Lance] + * Remaining fixes for item scripts. [Lance] + * Added NPC event deprecated warnings to ease debugging old scripts. [Lance] + +2006/05/12 + * Supplied fake NPC ID in sd->npc_id for item scripts. [Lance] + * Bugfix on fake npc [Lance] + * Fixed mob_once_spawn not working for non-random coordinates. [blackhole89] + * Reverted again the change that stuns the caster on Ske, Ska, Swoo when + the target is a nonplayer (rather than always) [Skotlex] + * Modified mob_spawn_once so that coordinates -1,-1 are "random around the + player" while 0,0 are random around the whole map (regardless of whether + there's a player attached or not) [Skotlex] + * Knockback will no longer work on traps during woe. [Skotlex] +2006/05/11 + * Fixed the definition of the KEY in the loginlog, thanks to TheUltraMage + [Skotlex] + * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively) + of 40% per level. [Skotlex] + * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows. + [Skotlex] + * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex] + * Increased NPC_POWERUP's dex bonus to +25*lv [Skotlex] + * Moved TK_DOWNKICK's stun time from time to time2 [Skotlex] + * Added TK_TURNKICK's stun to splash-pushed mobs. Duration is 2secs (time2) + [Skotlex] + * Merged the code for Ska, Ske, Swoo together. Swoo stun duration is now 10 + secs (reducable) if you target a mob that already has Swoo active. [Skotlex] + * Added the missing semi-comma from the upgrade_svn6533.sql file. Thanks to + Tanaous [Skotlex] + * Added back the missing code that substracts arrows when normal-attacking. + [Skotlex] +2006/05/10 + * Changed the state of Asura back to explosionspirits, added a hardcoded + move_enable check when invoking Asura and NOT while in BladeStop or a + Combo. [Skotlex] + * Added back SC_XMAS to status.c, it got lost sometime during all the + previous reworkings. [Skotlex] + * Changed wedding costumes to use setoption rather than changebase. + [Skotlex] + * Modified setoption so that flag 1 or no flag adds an option, and flag 0 + removes it. [Skotlex] + * Updated script_commands with the new behaviour. [Skotlex] + * Updated mob_db2.txt and mob_db2.sql to have only 10 drop slots rather + than 15. [Skotlex] + * Users are now able to use their own dnsbl servers (login_athena) [Zido] + +2006/05/09 + * Rewrote/cleaned up trade.c for a more clean trading implementation. + [Skotlex] + * Added @request commands, sends a request to all connected GMs of + lowest_gm_level or above as a whisper message. Defaults to gm level 20 + users (UNTESTED). [Skotlex] + * Modified @commands to use Meruru's code which is faster and does a fair + attempt at tabulating the commands presented. [Skotlex] + * Updated SKA to return a random value between 0 and 99 each time + status_get_def is invoked. [Skotlex] + * Updated Making Arrow to not include unidentified items in the list. + [Skotlex] + * Reduced drop slots from 15 to 10. [Skotlex] + * Updated mob_db.sql with the current data. [Skotlex] + * Updated setoption script command to receive a second (optional) argument + flag. If the flag is 1, the option is added to what the player currently + has; likewise using flag 2 removes only that option. No flag (or any other + value) is the older behaviour of removing all other options and setting + specificly what is passed. [Skotlex] + * Updated script_commands information for setoption due to this change. + [Skotlex] + * Small fix in npc-created chat rooms to properly include the terminating 0 + on the chat's event. [Skotlex] + * Fixed Fog of Wall's symmetry in respect to Misc attacks, they no longer + get reduced by 50% regardless of who is standing on the fog. [Skotlex] + * monster_ai&2 will now trigger the rude-attacked skill when the mob can't + move and the attacker is out of it's attack range. [Skotlex] + * Added missing icon for Joint Beat [Skotlex] + * Mob-search functions will now skip enemies with no exp/job_exp. [Skotlex] + * Treasure chests will now be excluded from the mob-drop listings + (@whodrops) [Skotlex] + * Fix on pc_skill which fixes overlapping when one gets more than one bonus + for the same skill. [Skotlex] + * Updated main.sql's loginlog table structure. [Skotlex] + * Added svn_update6533.sql to update the loginlog structure as suggested by + theultramage. [Skotlex] + * Cleaned up somewhat the implementation of BladeStop. [Skotlex] + * Fixed the head_bottom (pet-armor) position in packet 0x22c (walk packet) + when crafted for non-players. [Skotlex] + * Script commands sc_start, sc_start2 and sc_start4 will now start + regardless of sc defense of the target player (that is, they cannot be + avoided/blocked) [Skotlex] + * Fixed a possible counter overflow in attacked_count, changed the var size + to unsigned char since the code can handle the overflow now. [Skotlex] + * Multiple targets again reduces armor defense, as reported by Tharis. + [Skotlex] + * Increased dex bonus of NPC_POWERUP to +20 per level. [Skotlex] + * Fog of Wall's -50 hit reduction is now only for ranged attacks. [Skotlex] +2006/05/08 + * Reverted the change that was making ES skills stun the caster always. + [Skotlex] + * Removed the fixpos packet which is sent whenever you are hit while moving + as Aegis doesn't sends this packet neither. [Skotlex] + * ES magic will now put the caster on stun for 0.5 secs regardless of + whether the skill-target is a mob or not. [Skotlex] + * Added function clif_party_join_info which sends packet 0x1e9 each time a + party-member joins. This packet (as redundant info as it has) should also + contain the field for "adoptability", but that needs to be coded in yet. + [Skotlex] + * Added clif_ParseAdoptRequest which does the basic adoption handling. More + checks and the reply packets still need to be coded in. [Skotlex] + * Happy State and TK stances won't dispel on death now. [Skotlex] + * Cleaned up combo-skill implementation, SC_COMBO is automatically ended in + skill_check_condition now. [Skotlex] + * Modified TK-ranker infinite combos to behave as described by AuronX. + Refer to his thread in the development section for details. [Skotlex] + * Made all Soul Link Spirit skills not be castable on self. [Skotlex] + * Changed rate of NPC status effect skills to 50+10*lv% base chance + (guessed, but better than 100% for all levels) [Skotlex] + * Changed max level of NPC status effect skills to 5 [Skotlex] + * Increased max number of tries to find a random spot in maps to 1000 since + some maps have so many non-walkable tiles it's hard to find one in just 100 + tries. [Skotlex] + * status_set_viewdata will remove the Wedding Option status when you set a + class that is not wedding. [Skotlex] + * hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex] + * idletime will now be updated on attack-request, not on sit/standup + [Skotlex] + * Party members sitting will no longer be considered idle. [Skotlex] + * Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used + with the disguise/undisguise script commands instead). [Skotlex] + * Moved Sharp Shooting display to the block with Auto-Counter (since that's + the other skill that can show critical as well) [Skotlex] + * Corrected some fields in the standing still packet (guild emblem being + stored as a Long when it should be Short) [Skotlex] + * Modified most fields of view_data to be unsigned shorts rather than + signed ones. [Skotlex] + * On-Touch NPCs will now make you stop walking when you trigger them. + [Skotlex] + * ShadowJump/JumpKick will make you land on the target's cell now. + [Skotlex] + * Fixed Kaahi triggering only once per skill duration. [Skotlex] +2006/05/07 + * Fixed readme/changelog.html [KillerBox] + * Removed old logs. [Lupus] + TODO: 1. Add produce logging into PICKLOG 2. Replace map names with map index +2006/05/05 + * Optimized clif.c clif_scriptmenu/input/inputstr to check for sd->state.using_fake_npc + before sending one (as it's not required to send twice). + * Reinitialize sd->state.using_fake_npc in clif_parse_LoadEndAck (for scripts that warps + players and still continues execution to work). [Lance] + * Updated item_db.sql to current. [Skotlex] + * Fixed a bug in @commands, most likely the reason some people were still + getting crashes. [Skotlex] + * Fixed @commands not showing the last available commands (unless the total + amount of commands is divisible by ten) [Skotlex] + * Added a npc-script-event cache to avoid looking up event-scripts every + time they need to be executed. Events cached are all those defined in + script_config (on login, logout, mapchange, death, kill, level up) [Skotlex] + - Since the cache holds direct pointers to the npcs/events, do NOT unload + the related NPCs or you'll get dangling pointer crashes. However, + @reloadscript will work fine. + - Set the etc_log to on to see a summary of npcs/events loaded for script + execution on startup. + * The Rest bonus activated by using /doridori while in rest should now + trigger with all the class tree (TK/SL/SG) [Skotlex] + * Fixed Kaupe always triggering when the one who was under Kaupe was a + player rather than the one attacking... [Skotlex] + * /doridori now won't double the HP/SP regen of TKs, it only activates + their "happy" state. [Skotlex] + * Added the -50 hit penalty when standing on Wall of Fog. [Skotlex] + * Uncommented the status_calc_mdef2 call in status_calc_pc. [Skotlex] + * Being in Enjoyable Rest state will now also trigger the HP/SP Time skills + (even if there's no other TK around). [Skotlex] + * Added battle config settings view_range_rate and chase_range_rate to + adjust the view-range and chase-range (range2/range3) of the mob_db without + having to manually change them (battle/monster.conf) [Skotlex] + * Kaupe now will only block all skills of players, for non-players, only + normal attacks can be missed. [Skotlex] + * Moved the Kaite spell-reflect code after the damage calculation function, + so the reflected damage is exactly the damage the original target would + have received. Will only trigger if the damage to be reflected is above 0. + [Skotlex] + * OnEquip scripts will now trigger on log-on. [Skotlex] + * Infinite Endure will no longer give mdef bonus. [Skotlex] + * Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to + start/end infinite endure. [Skotlex] + * Fixed Kaahi's SP cost per heal. [Skotlex] + * Now when walkdelay is set to 0, characters will stop walking when hit, + but will not have any walk delay. (previously setting walk delay to 0 would + not even stop characters from walking when hit) [Skotlex] +2006/05/04 + * Some people think its sexy to declare variables after blocks of code. Fixed. [Zido] + * Fixed a possible infinite loop in skill_clear_unit_group [Skotlex] + * Some clean-ups in the mob_ai [Skotlex] + * Improved atcommand autoloot, now displays droprate in percents and notices + player if autoloot is already on or off. Also simplified the code [Harbin, Kain], + commited by erKURITA + * Added one grace range in the mob_loot search function which should fix + mob_can_reach failing when invoked with the same distance that distance_bl + returned. [Skotlex] + * Stun time for using ES magic on non-mobs reduced to 0.5 secs. [Skotlex] + * Eska is now usable on bosses. [Skotlex] + * Swoo will stun you if attempted on an already 'swooned' enemy. [Skotlex] + * clif_skill_failed will print out a debug line with the skill_id (since + the current null_po does not helps at all to fix it) [Skotlex] + * Applied TheUltraMage's suggested fixes to the grfio module. [Skotlex] + * Rewrote Kaahi to behave as it should. It will heal whatever amount of + damage accumulates in the time2 interval (500ms by default) after being + hit. [Skotlex] + * Changed skill_unit_move_unit_group to enable moving of all types of + ground-skills except ensembles (fixes warmth not following you) [Skotlex] +2006/05/03 + * Kaahi now triggers every 500ms rather than on every hit (but it only + heals if in those 500ms an attack that would previously trigger Kaahi has + taken effect). In other words, it works just like before, except damage + gets "buffered" into 500ms slots. [Skotlex] + * Kaite, Kaute will now show a skill effect when they trigger. [Skotlex + * Knowledge will now only trigger if you logon to the memorized map, not + walk into it. [Skotlex] + * Corrected @whomap directly invoking msg_table[] rather than msg_txt() + [Skotlex] + * Guessed where the pet data goes in spawn packet 0x7c. This may be wrong + and not fix the pet issue, but I doubt it'll cause any problems that won't + be fixed by making the pet move. [Skotlex] + * Updated Charge Attack's state from none to move_enable. [Skotlex] + * Made tomahawk an NPC_SKILL so that it may not be plagiarized. [Skotlex] +2006/05/02 + * Fixed standing up not really standing you up. [Skotlex] + * Moved battle_consume_ammo to the end of skill_castend_damage_id, + skill_castend_nodamage_id and skill_castend_pos2 rather than + battle_calc_weapon_attack. They will trigger when the player's arrow_atk + state is active and a ground skill was not invoked. It should fix all + issues with splash/ground skills consuming ammo per target rather than once + per skill use. [Skotlex] + * Added structure state to the ground skills, their fields are magic_power, + into_abyss and ammo_consume to indicate the states that were previously + stored in val3. [Skotlex] + * Implemented desperado as explained by Rockman-EXE. The skill-effect is + not showing up though, I'll need some logged packets to see what's missing. + [Skotlex] + * Removed the unit_can_move checks in skill cast-end, they should be + performed in skill_check_require when the skill's state is move_enabled. + [Skotlex] + * Changed extremity fist's state to move_enabled, the explosion spirits + check is now hardcoded. [Skotlex] + * Absorb Spirit Sphere now gives +10SP per sphere as per discussions with + Haplo. [Skotlex] + * Changed a <= into a < in pc_steal_item. This means drops with 0.01% are + impossible to steal unless you have at least 100% steal-rate (where steal + rate is dex - opponent dex + skill_lv*3% + 10%) [Skotlex[ + * Cleaned up clif_parse_action_request to enable sitting/standing while in + shops, interacting with npcs, etc. [Skotlex] + * Kaite now works against all types of spells. [Skotlex] + * Kaupe now works against all skills. [Skotlex] + * Sanctuary now won't damage non-enemies. [Skotlex] + * Blessing now will always give you bonus stats even if you are wearing + undead armor. [Skotlex] + * Modified how Rogue's treasure works so that you get +1% to your steal + rate rather than +0.01% to the final rate. [Skotlex] + * Rewrote Warmth to use ground-skill-units, it should behave now like in + officials (implementation is not quite the same, but it should yield the + same effects while consuming less bandwidth). "Stacking", as it's called, + is possible now, but limited to eA's minimum timer skill interval (100ms). + [Skotlex] + * Modified NPC_POWERUP so that it gives +10 dex * skill level rather than + +5+lv to all stats (as explained by Playtester and Tharis on how the skill + behaves). [Skotlex] + * Allowed SG_FEEL memorizing the same map for all three. [Skotlex] + * SC_FUSION won't end when you die now. [Skotlex] +2006/05/01 + * Added knockback when you run into a wall during running. However + position is not being refreshed on the client yet... [Skotlex] + * Fixed pc_disguise not allowing you to "redisguise". [Skotlex] + * Corrected a crash when sd is null in npc_event [Skotlex] + * After testing to make sure it works properly, I'm including + new battle conf options to limit MVP drops. [Reddozen] + * Removed OPTION_XMAS, it seems to not exist.... [Skotlex] + * Added SC_SMA to handle "ready to use SMA" status (rather than SC_COMBO) + since it has a visual effect to use. [Skotlex] + * Corrected the value of OPTION_FLYING [Skotlex] + * Using SG_FUSION ends Soul Linked effect. [Skotlex] + * status_setviewdata will set your option accordingly when the previous/new + view-class is wedding or xmas suit. [Skotlex] + * Added function map_foreachinshootrange, behaves the same way as + map_foreachinrange, but it also performs a "shoot-path" check before + invoking the function. Used in the skill subtimer function if + skill_wall_check is defined. [Skotlex] + * Fixed AL_WARP displaying "Unknown Area" selections when you don't have + all memo points used up. [Skotlex] + * Fixed alive_count not being reset on skill unitsetting, which leads to + some groups not being cleared once all their units expire. [Skotlex] + * Optimized Kaahi/Kahai, will now only show the amount of HP healed. Moved + to skill_counter additional effect so it may trigger even on miss. [Skotlex] + * SKA no longer blocks skills. [Skotlex] + * Optimized fake npc system. Added npc_checknear back to npc_buysellsel. [Lance] |