Difference between revisions of "Changelog"

From The Al`Kabor Project Wiki
Jump to navigation Jump to search
Line 1: Line 1:
Probably wont keep his here but i do need a place to store a scrape of them for search ability.  
Probably wont keep his here but i do need a place to store a scrape of them for search ability.  
Date offset +9. table offset +30. why isnt this https? script output is trashfire will writr a new one tomorrow meh. beautify this.
Date offset +9. table offset +30. why isnt this https? script output is trashfire will writr a new one tomorrow meh. beautify this.




Line 3,253: Line 3,255:
* Add more diverse to Unrest.
* Add more diverse to Unrest.
// * Removed Perl and associated files. :evilgrin:
// * Removed Perl and associated files. :evilgrin:
7-21-2016 (hotfix)
Code:
Cavedude
* Revert "Removed mod_functions.cpp and the associated calls."
7-19-2016 (hotfix)
Code:
Cavedude
* Revert "Charm should now break as soon as the owner zones, to prevent kill steals by the former pet and possibly faction wars." -- an attempt to fix an elusive crash.
7-17-2106 (hotfix) The year is 2106 and cavedude still needs beer
Code:
Cavedude
* Removed all references to NPCTypedata_ours as it was created, and never accessed. It was causing a zone crash when deleted in the NPC destructor, so hopefully that will be fixed.
Script:
Robregen
* Fixed the "Cure for Lempeck Hargrin" quest where it was not giving reward.
7-13-2016
Code:
Cavedude
* Treeform will no longer be faded immediately after casting.
* Expendable and potion items will no longer have a level restriction to use.
* Elevator/Lift type doors will now function without requiring multiple clicks.
* Beneficial spells will no longer break sneak and hide.
* Damage Shields will activate on hits where the damage is completely absorbed by a rune.
* Gating within the same zone will no longer cause you to lose your pet.
* Groups spells with TGB on will now target the caster if the original target is out of range, or is not a client.
* Implemented OP_CancelSneakHide.
* /guildstatus will now work on yourself.
* Cleaned up the /split handle some, and added the correct messages.
* Gravity Flux type spells will now work properly.
* Gravity Flux will no longer send an extra action packet.
* Fixed an issue causing expendable items to have 0 cast time.
* Shrink spells will now be capped at Gnome height. Growth spells will be capped at Ogre height.
* Shrink will now require the correct number of casts to get to minimum size.
* Shrink will no longer affect entities size 20 or higher.
* NPCs on roamboxes or grids with no delay on the first waypoint will no longer pause before starting to path.
* Corrected an issue causing Minor Illusion and Treeform to not show up correct for new players in the zone.
* Corrected the chance of Feign Death spells with a base value of 1 in the database.
* Removed mod_functions.cpp and the associated calls.
* Fixed aggro which was broken by the mod removal.
* Fixed an issue causing an old group member to rejoin the group after zoning.
* Accepting a group invite after the group is already full will no longer prevent the client from joining another group.
* Speaking in a language will now be sent to group members in other zones.
* Mobs that were blinded were being included in every use of IsFeared() which was bad. Blinded mobs can still cast spells when in melee range. The original fear code had no blind rolled into it, I added that. This was an overright. I changed the macro to use bonues and fleemode instead of looking at curfp. Testing looks good to me. (cherry picked From EQEmu credit to Paul Coene)
* SE_IllusionPersistence affects self only (Cherry picked from EQEmu - Credit to Demonstar)
* Fix illusions on zone (Cherry picked from EQEmu - Credit to Demonstar)
* Fixed a zone crash in AE spell logging.
* Invisible spells will no longer flash when they fade early.
* Bind Sight will now be faded when an illusion fades.
* When a player death occurs during a trade, any items in that player's trade queue will now directly go to the corpse to prevent item loss.
* Increased the default decay time for items dropped to the ground due to being full to 6 hours.
* Client initiated deaths will no longer generate duplicated messages.
* Removing an item that has more HP than your base max will no longer kill you, assuming the difference between your current HP and your max HP with the item wasn't more than your total HP without it. (Eg: You have 32 HP, you equip an item with 50 HP, making your total 82 HP. If you get hit for 35 HP and remove the item, you will die/go unconscious because 35 is greater than 32. However, if you are only hit for 31 and you take it off, you will survive with 1 HP left.)
* Fixed some potential zone crashes and altered some logging for trading.
* Players that die during a trade who do not leave a corpse will now cancel the trade before the death packet creation. This ensures the trade queue items are returned to the player, or dropped to the ground properly if the player has become "full" due to shifting items around. (This is mainly an issue with bags, since normal items will just go to your first open slot.)
* The client will now handle death due to a DOT tic, this will prevent double messages.
* The client will now also handle deaths caused by damaging yourself.
* Changed the logic regarding death to a DOT to accomodate NPCs.
Haynar
* Updated z_offset calcs for fixed size races.
Torven
[Tradeskill combine and skill-up code redone]
* TradeskillExecute() and CheckIncreaseTradeskill() cleaned up for accuracy and readability.
* Mastery AAs for tradeskills other than Jewelcrafting and Alchemy removed. (Poison Mastery not yet implemented)
* The tradeskill combine fail chance reduction beyond the last 5% has been removed, as it was a July 2003 addition. All combines now have a 5% minimum chance to fail regardless of crafter skill.
* The 5% minimum chance to fail is now applied after mastery AAs are considered.
* Added the increased chance of a skillup for tradeskills when skill <= 15.
Database:
Robregen
* Removed Emerald Orange from the Sebilis Forage Table.
* Added Ring of Scale faction hits to Elven Dancers in VP.
* Set the respawntimer for a presence in PoSky to 2 hours.
* Cyndreela will no longer hold a phantom weapon.
* Set outdoor Dragons size to 6 from 1.
* Duennan Shielding Ring should now be rechargeable using the box of the void and class 5 mana battery in Plane of Sky.
* Yendar Starpyre will now summons.
* Forpar Fizfla will now summons.
* Forpar Fizfla will now be located inside a windmill in Steamfont.
* The Wizard, Cleric, and Mage temp pet should now generate the correct combat message.
* Troopers and Crusaders should now be more resistant to magic.
* Warlord Zyzz magic resistant is lowered.
* replace the roambox in Plane of Fear with grids to help eleviate mobs from falling below the world.
* reduced respawntimer for trash roaming mobs in Emerald Jungle.
Cavedude
* fixed the Armoire doors in Temple of Sol Ro.
7-6-2016 (hotfix)
Code:
Cavedude
* Fixed a zone crash caused by Begging without a valid target.
6-30-2016 (hotfix)
Code:
Cavedude
* Treeform will no longer be faded immediately after casting.
* Support code to prevent charmed NPCs from eating multiquest items.
6-29-2016 they had an npc that straight up summoned gold this is fine!
Code:
Cavedude
* Added message for disarm success.
* Updated the Bard stacking rules to correctly handle movement speed buffs and debuffs.
* "You cannot see your target." when casting a spell will no longer generate interrupted messages for players around the caster.
* Sacrifice and DOTs will now produce the proper messages on death.
* Rewrote Beg to no longer cause a client desync.
* Changed the chance for a NPC to attack while begging and the coin type and amount on success to be based on the player's beg skill.
* Coin on beg successes will now be removed from the NPC's loot, instead of being summoned.
* Fixed an issue causing controllable row boats to not update their position properly.
* Bard pulses will now always do a resist check.
* Renamed ResistSpell() to CheckResistSpell() to make its function more clear.
* Consolidated the code that handles successful resists to ResistSpell().
* Changed AE spells with a target limit to default to 5 targets allowed. Damage spells are limited to 4, with the exception of the Al'Kabor line of spells.
* AE Mez spells will now have a target limit.
* Corrected an issue where the target would not count towards the limit for certain AE spells.
* Casting a Mez spell on yourself will bypass the level cap check. You still have a chance to resist the spell.
* Bard pulses will now be cancelled while on a boat.
* The Stun, Charm, Pacify, and Mez family of spells will now only enforce the spell level limit when the caster is a player and the target is a NPC. Every other combination will not use a level limit.
* Removed the rule Spells:NPCIgnoreBaseImmunity as it only served to create confusing logic.
* Corrected an issue where Mez spells would sometimes be considered beneficial.
* Prevented an unlikely situation where Harmony spells could use the wrong target to perform its casting checks.
* Added a caster check to prevent a redundant spell resist message.
* Spells will now set a recovery timer upon successful completion of a cast. This timer will be checked after a spell completes the casting phase. If the timer is not yet expired, the new spell will be interrupted.
* Removed the 400 millisecond delay when using clickies with a cast time. Clickies are also exempt from the recovery timer.
* Added a rule Spells:SpellRecoveryTimer to control how long the recovery timer is. It defaults to 2500 milliseconds.
* When any Alliance type spell is cast, any faction bonuses caused by a previous cast will be removed.
* All players in a zone will now receive door open packets by NPCs for the benefit of Eye of Zomm.
* Fixed a spell slot desync issue that happened with specific buffs.
* Treeform will now be faded server side when a player movement update is recieved. This is a workaround for the issue allowing Treeform to stick anywhere server side due to a lack of tree data in our map files.
* Corrected the spell stacking rules regarding illusion spells.
* Wolf Form spells will now use the correct texture.
* Bind Wound will no longer force the target to stand.
* Corrected the Bind Wound messages.
* Corrected an issue causing the max heal percentage of Bind Wound to not be calculated correctly.
* Added combat messages for Thunderkick, Silentfist, and Ashenhand disciplines.
* Fixed an overflow found in the Monk disc reuse timers. Monks who were affected by this will see their discipline reuse timers drop considerably, so be sure to check.
* Lowered the chance that spin stuns can break early. (This excludes Whirl till you hurl and Dyn`s Dizzying Draught - they remain broken.)
* Charm should now break as soon as the owner zones, to prevent kill steals by the former pet and possibly faction wars.
* Rez will now fade charm on your pet. The hatelist is cleared after the charm is faded, so the former pet will not have aggro.
* Beneficial and Detrimental single target spells no longer use the Z coord in the server's range check.
* Casting on a target who is standing on "ice" or "slime" and the caster is in a normal region or vice versa will now work properly.
* Added NPC Special Ability to always leave a corpse if the deathblow was dealt by a client or a client's pet.
* Added support code required for charmed NPCs with lua scripts to accept and equip items they do not require in their trade event.
* NPCs will now use the correct damage messages after being disarmed.
* Consolidated breaking sneak and hide to a single method. Replaced most of the raw packet creation for both with SendApperancePacket().
* Sneak/Hide will now break properly when casting a spell, when a spell lands on a player, when a player resists a spell, when attacking, when attacked, and when an old world trap is clicked and the player either lacks the disarm skill, or the disarm attempt fails. (Many of these were already working, I just confirmed them.)
* Resting a spell or being missed by a combat swing will cause the sneak button to "bug" if the player is not also hidden. The player will need to click the button to reset it. This quirk occurred on AK.
* Fixed an issue causing the hide packet to not be sent out correctly for racial hide on failures.
* Corrected an issue causing Sneak to sometimes incorrectly cancel hide, and to send out an invisible appearance packet instead of a sneak packet (copy/paste error?)
* Rewrote Sense Traps to support old world traps (swinging axe, falling ceiling, etc) and to provide accurate messages.
* Old world traps can now be disarmed by clicking on them, if you have the trap disarm skill.
* Added more logging for sneak, hide, and traps.
* Removed the cooldown timer that occurs when clickies are used.
* Removed support of the RecastDelay item database column since no clicky item in the DB uses it. Also removed pTimerItemStart which is the associated timer.
* Tradeskill skillups will now use the difficulty value from the database instead of the hardcoded values. (No values have been changed!)
* At skill 190, the chance to succeed on a tradeskill skillup will correctly be 5%, instead of 5.99%.
* Removed rule Skills:TradeskillSkillUpModifier. Difficulty can be changed per skill in the DB now.
* Increased the difficulty cap for normal skillups to accommodate begging.
* Bard pulses will no longer check for line of sight.
* Skills that allow skillups from green cons (offense on damage shields) will no longer allow skillups if the NPC is green and level 18 or under.
Haynar
* Bard instrument modifiers associated with buffs will now carry when zoning
* Added code support for zoning out of airplane, to replace the zoner script. (This should fixed the issue with the occasional death when jumping off the islands.)
* Fixed an issue with zoning that drops you to server select, under certain conditions.
* Very high snares will no longer make running mobs stop. Walking or fleeing (feared) mobs can still be stopped by high snares.
Database
Robregen
* Added a missing groundspawn "Abandoned Orc Shovel" in lake rathe
* Putrid Skeletons should now cast Putrid breath
* The Spectre in Feerrott will now see ivu
* decaying initiate / decaying councilman should be more common in Nektulos.
* a spirit of flame (cleric epic) should now leave a corpse if it recieve a death blow from the player.
* removed roambox and add grids to named cycle in Frontier Mountain.
* Named Cycle in Frontier Mountain should now instantly respawn
* Hangnail in Karnor Castle should now give a negative faction hit with Venril Sathir.
* adjust the following tradeskill:
-- Jewelcrafting, Fletching to 4
-- Baking, Brewing to 3
-- Tailoring, Smithing to 2
6-17-2016 (hotfix)
Code:
Cavedude
* Changed the random location adjustment that happens when a port or spell is used to get its value from the random_loc column of the zone table. This allows us to disable it per zone (set to 0) or make the value bigger smaller as needed (default is -/+ 3)
* Player location will no longer be adjusted for intrazone moves.
* Fixed an issue that caused doors to save the adjusted coordinates the last player used, instead of rolling with the door's default coordinates.
6-15-2016 (hotfix)
Code:
Cavedude
* Fixed a zone crash that happens when a player is damaged and there is no attacker.
6-15-2016
Code:
Cavedude
* Eye of Zomm will no longer force the caster to stand after it has faded.
* Eye of Zomm will now swim at a painfully slow rate.
* Corpses will now sink to the bottom in water.
* Fixed an issue that sometimes caused corpses to end up in the wrong location when they fell off a boat.
* Rewrote /camp to fix an issue causing the player to leave their group when the camp is abandonded.
* Removed the "soandso has left the zone" message players recieved when a group member zoned.
* Moved a log message when a player leaves the group to a better spot to avoid spam and confusion.
* Added accountid column to group_id. This is for the benefit of world so it can remove a member of a group after the client's variables are cleared.
* Changed success in CheckIncreaseSkill() to use uint8, and added an enum for SKILLUP_SUCCESS and SKILLUP_FAILURE to make it less confusing and easier to read.
* Damage and death packets will now be sent in the correct order. This corrects some invalid messages including most pain and suffering messages.
* When death occurs on a combat swing, the final damage packet will no longer be sent. The death packet will handle the final damage message(s).
* Consolidated the death packet creation code to a single method.
* Environmental deaths (falling, drowning, etc.) will no longer produce the pain and suffering message and will now generate the proper message for the type of death endured.
* Added comments, logging, and performed a general cleanup of the damage code, particularly when a death is involved.
* Damage shields should now bypass runes.
* Non-melee damage messages will no longer filter under Damage Shields.
* Divine Intervention/Death Pact will no longer fade on a failed rolled. The buff will remain until you either roll a success or die.
* Changed the success chance of DI/DP to be closer to the client's formula.
* DI will now heal NPCs for 100,000 HP.
* When zoning, players will now receive the message "soandso is now the leader of your group." instead of "You have joined the group."
* The out of range spell check that happens at the end of a cast will no longer generate interrupted messages. Instead, only the caster will see "Your target is out of range, get closer!" using the spell failure text category.
* Changed healing messages to use the spell chat category.
* Corrected some NPC spell messages to use default white text instead of spell.
* Players will no longer see what spell has been cured, and instead will see "Your target has been cured."
* Fixed multiple messages that were not correctly displaying for corpse summon spells.
* Addressed a rare zone crash I see locally. (Not clue if it's fixed or not, I'm not exactly sure what's causing it.)
* Removed the hardcoded zone_controller NPC as it was creating issues with encounters. The NPC is now found in the DB with ID 10. It will need to be given a spawnpoint in whichever zones it is to be used in.
* Call of the Hero will now despawn the target's summoned pet and fade charm on their charmed pets.
* If the target of CoH is within 100 coords of the caster, aggro will not be cleared and the caster may draw beneficial aggro.
* Randomized the zone-in locs of ports slightly to help prevent players from incorrectly falling to death. Please note: This does not prevent falling to your death while encumbered. The more weight you have, the more likely you are to fall while zoning.
* AE Mem Blur spells will no longer cause beneficial aggro.
* Added some logic I overlooked in the Divine Intervention rewrite.
* Bard pulses will no longer stick on targets who are invulnerable.
* Corrected the Bard stacking rules regarding spells and songs that are different types (Beneficial vs Detrimental.) This allows as an example Guardian Rhythms and Tashania to stack.
* Mobs buffed with Divine Aura will now be picked last when a NPC chooses who it will attack each swing.
* Mez spells with a Mem Blur component will have the Mem Blur effect skipped if the target is already debuffed with the same Mez spell. If a different Mez is cast, any Mem Blur component will be rolled as normal.
* Spells that use a stack blocker are now properly handled in the Bard stacking rules.
* NPCs that are immune or are too high in level for a charm or mez spell will now properly resist it.
* Healing a charmed pet will no longer create beneficial aggro.
* Minimum faction value cap is now -2000 instead of -3000.
* Bard song server filters should now match the client's filters.
* Bards will no longer see the "Your spell did not take hold" message when detrimental AE songs are cast and there are nearby players. Instead, the player target will receive a protected message.
* Spin stuns on NPCs will now have a random chance to break early. Whirl till you Hurl and Dyn`s Dizzying Draught have a higher chance to break.
* Corrected an issue causing the stun component of a spin stun to drop without fading the debuff.
Haynar
* Improved movement of mobs/pets over short distances, so they no longer look choppy sometimes while moving.
* Fixed an error with the delta position translations from the client, which was not accounting for the (+/-) correctly.
* Improved the loiter logic when a mob resumes moving, associated with feign death. Mobs should not linger every single time and will resume movement after they start facing their desired direction.
* Fixed an issue with rotations when mobs return to their guard position. They should rotate smoother until they are facing their guard heading.
* For NPCs, the delay in moving following loss of engagement, should no longer reset for other loss of aggro methods, such as coh, mez/memblur. The total delay is maintained so that even for FD, it does not reset after one attempt unless it has all been used up.
* Fixed an issue when a client's charm on an NPC breaks, causing their target to get corrupted.
* Snared pets will follow their owners a little better, rather than being snared to a stop, when they hit the distance they would switch to walking.
Database:
Robregen
* Pet should now duel wield without weapons.
* Added a missing flavor text to Froggy in Sebilis
* Goblin Drunkard in Sol A should now cast spells and a pet.
Robregen / Haynar
* added Various possible spawnpoints for Quillmane/PH found on live
* shorten the respawntime of trash roaming mobs in South Karana to 36 seconds.
Misc:
Haynar
* added pathfile for Runnyeye.
6-3-2016 (hotfix)
Database:
Robregen
* fixed Pets not being able to equip weapons
* Shorten the respawntimer for Sarnak Courier / PH in Lake of Ill omen.
* Grand Herbalist in Chardok should now always drop a loot.
* Change PH / Death Beetle to one spawn instead of a various spawnpoint in Soldungb.
6-1-2016
Code:
Cavedude
* Eye of Zomm/Tallon can now open doors again.
* Spells will now finish casting when they could not take hold on the target. (Consuming mana, triggering cooldown, etc.)
* If the attacker is no longer valid (dead, LD) when the damage packet is being constructed, we will now have the defender attack themself, instead of letting the client use pain and suffering. This will produce more predictable damage output.
* Excluded generic factions from counting towards flee ally count. (Indifferent, animal, KOS, noob monster) These NPCs can still be counted if their race matches the NPC about to flee.
* Eye of Zomm will now spawn in front of the caster.
* Quest NPCs will now decline hand-ins if their faction with the player is threateningly or scowling.
* Renamed special attacks SPECATK_QUAD to INNATE_DUAL_WIELD and INNATE_DUAL_WIELD to DO_NOT_EQUIP based on the content developers usage.
* Implemented DO_NOT_EQUIP NPC special attack. If set, the NPC will never equip any items, including from their loottable or ones handed to them. The items will be placed in the general slot of their loot inventory.
* Fixed an issue causing AE pacify spells to not check level or immunity of the targets.
* Mule character limit is not configurable by rule World:MuleToonLimit. It defaults to 8.
* Moved the defensive avoidance skillup checks while invul to the correct class :I
* NPCs will now only block KOS handins if the BAD_FACTION_BLOCK_HANDIN special ability is set.
* Multiple key groups will now display properly when /key is used.
* Sentinel will no longer create a string error.
* NPCs will no longer enrage while fleeing, unless they are also rooted.
* Call of the Hero can now be cast on players in a different map region (water vs land.)
* The target of /makeleader no longer needs to be in the same zone.
* Fixed an issue that sometimes caused the group leader to not be set or updated in zones they are not in.
* Merchants will now be capped at 767 items per slot. If you sell items that exceed that limit, you will still recieve coin for them but they will be immediately deleted and not able to be purchased back.
* Rewrote /pet who leader logic as it was completely broken.
* /pet feign now requires the Feigned Minion AA and uses rank to determine the chance of success (25/50/75.) Pet feign likely needs to be implemented in the code at a later time.
* Added a check to cancel a merchant transaction if the merchant tries to send a 0 quantity stacked item to the client.
* Rewrote keyring to no longer depend on zone flags. Keyring information will now be loaded from the new keyring_data database table.
* Quick description of the new table (which can be edited under the Server tab of the editor):
~ key_item: The ItemID of the key.
~ key_name: How the key will display when the /key command is used. Most use the item name, some like frozenshadow do not.
~ zoneid: The zone the key is used in, NOT the destination zone.
~ stage: Used to determine what step you have in tiered zones like frozenshadow. Most keys will just use 0 for this.
~ After the new key is inserted in the new table and the keyitem column is set in doors, you can complete the keyring setup by either:
1. Toggling the nokeyring option under the specific door to "no" in the editor and let the server handle it.
OR
2. You can use the keyring methods in lua (with nokeyring left as yes) to manually unlock/port/whatever else you want to do.
-- I have converted all existing keys to the new system. Player keyring data is unaffected, and their zone_flags can be deleted.
Torven
* The Defense skill made to only have a chance to skill up when the defender successfully rolls a miss.
* Spells cast on 'belly caster' NPCs will now do 0 hate if casted from out of melee range if the spell is not unresistable.
* Defense skill raises moved to AvoidanceCheck()
* The divisor in Mob:GetMitigation has been removed as the database has been mass edited to have more compatible AC values.
Database:
Robregen
* VP wurms should now be paci-able
* Spiders in East Karana will now dominate the hilltops.
* VP Guardians should now be mezzable.
* Replace the roamboxes in Steamfonts with grids to fix an issue with mobs falling below the world.
* Replace the roamboxes with grids for Firiona Drixies in Firiona Vie so they should no longer fall below the world.
* fixed a stacking issue with Worked Silver Chain and Gem Studded Chain
Torven
* Kithicor Dark Elves now have the 'Not Loitering' flag applied.
* Veeshan's Peak dragons will now only cast charm on their current targets.
Misc
Haynar
* Updated path files for the following zones: warrens, crystal, skyshrine, necropolis,and droga
* Added new path files for Sirens, mischiefplane, acrylia cavern, caves and tunnels in dreadlands, and rockhopper caves in dawnshroud peaks.
5-18-2016
Code:
Cavedude
* Charmed vendors can no longer be browsed.
* NPCs will no longer be affected by Levitate or See Invisible spells. (The spell will take hold but have no effect.)
* Corrected the success formula for Memory Blur spells. (Thanks Ravenwing and Darchon for the formulas!)
* The client will no longer apply more damage than it should on melee hits.
* Added the ability to add an item to the cursor queue without sending a packet to the client. This should help prevent desyncs caused by items being in a different order on the server and client's respective queues. This also allows us to control the cursor queue "rules" server side, and have GMs bypass them if need be.
* This change fixes the desync that happens when multiple items are handed back as a result of a tradeskill, and should help to bullet proof other cases where the cursor queue is used (forage, spell summons, #si for GMs)
* Pushing items to the cursor during trades and when no other slot is available in general was not changed in this commit.
* Added Lua export for PushItemOnCursorWithoutQueue
* Change how rules are loaded and inherit values - When a custom ruleset is loaded, it will always first look for a value present in the ruleset id for that zone, when it is not present, it will load from the default ruleset instead of immediately falling back to the source value. This is to eliminate the excessive amount of duplicate entries in the rule_values tables (credit to Akkadius)
* Procs will no longer occur while Divine Aura is active.
* Stuns will no longer take affect when a NPC is mezzed. Pre-existing stuns will fade when the Mez wears off.
* Dispels can now be cast on other players in PVP situations.
* Single target buffs will now overwrite the group version of the buff and vice versa provided the caster's level is equal or greater than the original caster's level. If it is not, it will be blocked in both cases.
* Added KILLED emote type, which causes the NPC that gets the final hit on any other entity to emote. KILLEDNPC for NPC slays and KILLEDPC for PC slays are unaffected by this and will continue to work. However, using either combined with KILLED will result in a double message.
* Removed #itemsearch alias "search" since it was ambiguous. #itemsearch, #finditem, or #fi all still work.
* Added HPRatio to #showstats.
* Added the remaining boat NPCID defines in preparation of a future commit.
* Added IsQuestTrigger() to determine if a NPC is an invisible quest trigger. Unused at present, reserved for future use.
* Damage Shields will no longer have reduced damage in PVP.
* Added sort_order to npc_faction_entries, so the order faction hits appear in game can be changed.
* Fixed a zone crash in the emote code.
* If all the damage was done to a NPC using a damage shield, faction hits will no longer occur.
* Changed the race/bodytype of zone_controller to match Haynar's findings and to match the triggers in the DB.
* Removed IsQuestTrigger() as it's no longer necessary.
* Added mule exception for IP limit.
* Attempting to open a door with the wrong key will now give the proper message.
* Added NO_LOITERING special attack, which forces an NPC to immediately begin pathing/return home after losing aggro.
* Clicky items with 0 casttime and 0 recast delay will no longer suffer a 400 millisecond cooldown.
* Removed the extra message casters receive when they heal another character.
* Fixed the issue causing the healed message to not show up for the target on Heals and Life Taps. HoT spells have been excluded from this.
* When a caster casts an exceptional heal, they will now see two exceptional messages. One for them, and one everybody else sees.
* Corrected Mez overwriting rules.
* Stacking rules regarding detrimental songs and detrimental spells will now work better.
------------------------------
Eye of Zomm changes and fixes:
------------------------------
> Players can now chat, and cast spells/songs with the eye up.
> The eye is now attackable and killable by all players, and will leave a corpse and grant 1 point of XP.
> The eye will no longer assist the caster after the buff has been clicked off.
> The server is now properly keeping track of the eye's current location.
--------------
Flee changes
--------------
> Added a new NPC special attacks for flee:
> ALWAYS_FLEE_LOW_CON: Causes a NPC to always flee once they reach the HP threshold if they are green to top hate.
> FLEE_PERCENT_CON: Causes NPCs to flee at 50% when they are deep green to top hate. Note: NPCs over level 18 will essentially ignore this special attack as IsDeepGreen() was changed to max out at level 18 when compared to a entity that is level 65.
> Removed Combat:UseConForFleeRatio as it is now handled by the special attack above.
> Corrected the issue causing a NPC to flee at the percent below the one desired. Changed the default value of Combat:FleeHPRatio to 20 (from 21) as a result.
> Changed #fleeinfo to handle the new variables. Altered GetFleeRatio() to optionally accept a Mob object instead of using top hate in order to allow #fleeinfo to print out the percentage the NPC target will run at. GetFleeRatio() in normal flee situations will continue to use top hate.
More changes based on feedback from Torven:
> Mobs that are level 18 or lower and green to top hate will now always run at 50%.
> Removed special logic regarding yellow cons, they will now use the normal percentage calculation. Reds will now always run at a lower percent.
> The FLEE_PERCENT special attack will now ignore any special rules. The NPC will always run at whatever that is set at.
> Removed IsDeepGreen() as it is no longer necessary.
> Please note: We know this still isn't perfect, and that there are many exceptions on Live (and presumably AK.) But hopefully, this should get us closer to where we need to be.
-------------------
Haynar
* Updated hazard navigation in pathing to be more accurate. Mobs should be a bit smarter and not fall off bridges or down holes, like on the bridges in Sebilis.
* Made adjustments to fizzle rates. Everyone should fizzle less, especially hybrids.
* Added support for different invis types (invis vs animals, invis vs undead) to be sent with spawn packets.
* Improved some z calculations when npcs move towards other players or npcs in open areas. This should help prevent falling below world when short races are involved.
Torven
* PC stuns on NPCs capped at 7.5 seconds
Robregen
* Reworked and refactored UCS Process not to skip clients. (credit to Demonstar)
* fixed various memleak (credit to Demonstar)
* added zonecontroller ported over from eqemu. (credit to Akkadius with Cavedude adding lua support)
* Rewrite VarCache_Struct (credit to Demonstar)
Database:
Robregen
* Captain Boshinko in HHK is now on 6 minute respawn time.
* adjust loots for Iksar Trustee in Chardok to have an even chance to drop either Earrings of Purity and Cleansing
* fixed the model for Enraged spectral librarian in Kaesora.
* the door to Polzin in the hole should no longer be locked.
* Wu's should now be combinable for all sewing kit containers including racial only containers.
Script
Robregen
* enabled zonewide repop on CT spawn in plane of fear.
Misc
Haynar
* Updated pathing for Kael, Velketor's Labyrinth and Solusek's Eye.
* Updated some pathing areas with issues in Veeshan's Peak.
5-10-2016 (hotfix)
Code:
Haynar
* Mobs interrupted while casting spells, will no longer forget they have spells which they can cast.
5-4-2016
hotfix:
Cavedude
* Changed /who all count loop to match how it was written before. (No functionality additions were lost in this commit
Code:
Cavedude
* Added ChangeDespawn() to lua_spawn.cpp This allows content developers to change the despawn type (and if used) the despawn_timer.
* Corrected an issue causing /consent to not work until the consented player zones.
* /consent will no longer send a message to the consented player if the consenter has no corpses.
* DOT spells like Engulfing Darkness will now display a spell message.
* Prevented an extra loop from running when a player dies.
* Added ignore_despawn column to npc_types to have NPCs ignore the despawn column in spawngroup.
* /who all will now iterate the client list in reverse order, so newer players will appear on the top of the list.
* Added rules RuleI(World, WhoListLimit) and RuleB(AlKabor, NoMaxWhoGuild) to /who all. WhoListLimit allows us to change the list limit (defaults to 20.) NoMaxWhoGuild allows players to see a non-truncated /who all guild# list. (It's possible the limit is in place to prevent a client crash - this should be tested on Dev.)
* Cleaned up the code for /who all so it it is easier to read. Added some comments, and some strings as defines as well.
* Fixed a few issues dealing with pet aggro from DOTs and damage shields.
* Pets will now aggro when most detrimental spells are cast on their master.
* Buffs and debuffs should now choose a slot that syncs with the client's internal rules when overwriting existing spells.
* When overwriting, the yellow spell fade message will now only display when a detrimental spell overwrites a different detrimental spell.
* Corrected the stacking rule when the same detrimental spell is cast on a NPC by two players.
* Greatly reduced the hate caused by mana drain spells.cpp
* Mana drains will now check if the target has mana in the beginning of the cast instead of the end.
* Damage Shields can now cause offense skillups.
* NPC pets will now leave corpses with items if they have them.
* Removed pets_equipmentset code as traditional loottables handle this functionality completely.
* Items will now display in the last slot on merchants.
* When full, merchants are now capped at 10 "hidden" items that will show in their inventory list as other player sold items are bought.
* Added a check to prevent an item's quantity from going negative when purchased by a player on the server.
* When a permanent merchant inventory item is sold out (Crow's Brew for example) the remaining items will move up a slot the next time the merchant window is opened.
* Changed the order of merchant inventory logging to reflect these changes and to make more sense.
* Stackable items in Bazaar merchant lists will now display with 1 charge.
* Stuns will now interrupt Bard pulses.
* PVP will no longer be hardcoded in the entire arena zone.
* Moved the method to fade buffs when entering airplane out of Lua and into the server code.
* Moved FadeBuffs() to after corpse/XP generation of NPCs to prevent issues with corpse creation.
* Dying due to Pain in Suffering while in a duel or in PVP will now set the proper killedby value.
* Enrage will now be checked when damage is done on NPCs who enrage, instead of on the AI timer for all NPCs. This should improve the accuracy of the enrage percentage.
* Desyncs should be greatly reduced when two or more items are handed back as a result of a tradeskill combine (but this is not completely fixed.)
* Removed the salvage code.
* Food/drink consumption will no longer halt in Bazaar.
* Stackable items will now be combined into a single slot on Bazaar merchants.
* More changes to spell messages to correct Earthcall.
Haynar
* Updated pathing to prevent mobs from bouncing in roamboxes.
* Fixed an issue where mobs won't always rotate back to their guard heading correctly.
* Added some pathing improvements to help prevent mobs getting stuck in loops.
* Mobs fleeing or feared in zones like frozenshadow, with distinct pathing areas, will now find fear points within their pathing area. This prevents them from running through walls running for a random node that is not connected.
Torven
* Newly aggro NPCs that aggro by poximity to hostile entities will now add all entities (players and NPCs) within the aggro range to the hate list simultaneously instead of only one.
* Unresponsive NPC fix.
* New stuns on already stunned clients are now ignored.
* Stuns casted on clients now ignore any stun level cap, which now only apply to NPCs.
Database:
Robregen
* Removed frogloks of Sebilis, Guk, and Krup faction hits from all NPC in Sebilis.
* Removed Ghroul roots spell from a ghoulish ancilled in Mistmoore.
* Emperor Chottal in Sebilis should now summon a pet.
* tainted / corrupted seahorse in Kedge is now KOS.
* Removed all door objects in Kedge Keep.
* increase mana pool for Verix in Karnor's Castle.
Scripts
Robregen
* Updated various Plane of Sky quests to fix to reward the upgraded version.
* Changed the faction requirement for the final turn ins.
* fixed pathing for Mortificator_Syythrak / PH in Rathe Mtn
* Changed the Troll Beastlord Newbie Quest to the original version (pre-guktan)
Misc
Haynar
* Updated pathing for frozenshadow.path
* Updated pathing for Droga.
4-22-2016 hotfix
Cavedude
* Corrected an issue causing /consent to not work until the consented player zones.
* /consent will no longer send a message to the consented player if the consenter has no corpses.
* DOT spells like Engulfing Darkness will now display a spell message.
* Prevented an extra loop from running when a player dies.
I apologized for shutting the server down immediately instead of 10 minutes warning . My mistake.
4-20-2016
Code:
Cavedude
* Removed RestRegen code as our client does not support it.
* Mezzed NPCs will no longer seek out new clients to add to their hatelist and will no longer call for help.
* Corrected the issue causing charmed NPCs to despawn when their player master leaves the zone.
* Fixed an issue causing phantom waypoints to be added to the end of patrol and circle type grids.
* Further changes to OP_Damage packet generation to prevent double messages for debuffs with a direct damage component.
* Moved OP_Damage packet generation from CommonDamage to its own method, Mob::GenerateDamagePackets()
* Some small tweaks to the filters and how the caster receives damage messages in GenerateDamagePackets.
* Feign Death will now block PC to PC trade requests.
* Defensive skills can now skillup while invulernable.
* Added enums for damage types so we know what we're looking at.
* Moved OP_Damage from encode to native code.
* NPC shouts will now display in white text.
* Changed some spell failure messges incorrectly using MT_Shout to use CC_User_SpellFailure instead.
* Changed several messges using MT_SpellFailure to use CC_User_SpellFailure to be more uniform.
* Summon Companion will no longer summon pets that appear on another NPC's hatelist.
* Pets that are engaged will now add entities that attack their master to their hatelist. (Previously, they were not adding anything to their hatelist while engaged unless they were directly attacked.)
* Added message when Summon Companion fails due to the pet having aggro.
* Removed the engaged and hate checks from the flee ally count.
* NPCs that are deep green to top hate will now flee if able. (We can tweak this one if it doesn't seem right.)
* /consent will now work on any offline character, even if they don't yet exist.
* Rewrote the consent packet logic and added some comments.
* Regen rewrite:
--------------------------------------------------
--- Rewrote HP regen formula to match the client.
--- Rewrote mana regen formula (Thanks to Ravenwing and guildmate)
--- As a result of the above, Bard mana regen is now a fixed value (with level bonuses) instead of being based on meditate skill.
--- HP and mana regen will now take level, item, spell, and AA bonuses into account even when hungry/thirsty.
--- Classes that do not get mana will no longer calculate mana regen (this includes low level hybrids.)
--- Change endurance regeneration to send fewer packets. It now works closer to the behavior seen in packet collects from Al'Kabor.
--- Being either hungry or thirsty will now lower/stop mana and hp regen and stop endurance regen. This is how the client works, and due to the other changes in this commit the server must now match to prevent falling out of sync.
--- Rewrote code that causes endurance to drop when hungry/thristy to cause smoother updates.
--- Endurance updates will no longer occur when endurance has not changed.
--- Implemented STR/AGI/DEX penalties when endurance is low.
--- Added rule AlKabor:NPCsSendHPUpdatesPerTic. When true, NPCs will send HP updates to players per tick or when targeted instead of real time. This is correct behavior for Al'Kabor, but probably not desired. This rule is more for preservation. Defaults to false.
--- Added Regen logsys category, SQL handled by world automagically.
--- Added #showregen command to provide details about a player's regeneration.
---------------------------------------------------
Haynar
* Fixed a pathing bug where mobs/pets could get stuck, when they can't find a node route to their destination.
* Fixed a hate list issue with scripts, that was inadvertently clearing the hate list when it was not desired.
* Updated some position rounding for mob movements.
Torven
* Strength modifiers will now adjust NPC offense.
* Agility modifiers will now adjust NPC avoidance.
* NPC offense, mitigation, avoidance, and to-hit calcs have been slightly adjusted to be more accurate.
* Spells with IDs 859 to 1023 have been hardcoded to be uninterruptable. This was discovered in a client decompile by Demonstar55. (these spells are stuff like drake breath and raid boss AoEs)
Robregen
* Added IsMobSpawnedBySpawnID function to lua (thanks Cavedude)
Database:
Robregen
* Added a missing faction for a soulsipper in Emerald Jungle.
* Added a missing see ivu for a drolvarg pawbuster in Karnor's Castle.
* removed see invisible from live names as well as see undead from undead named in Mistmoore Castle.
4-14-2016
Code:
Cavedude
* Fixed a no drop exploit with world containers.
Database:
Robregen
* removed Robe of Invocation from Xygoz loottable in VP.
* slightly increase the spawnrate for Rotting Skeleton in Dreadlands.
* VP trash mob are now on the correct faction.
* added a missing recipe for vale sewing kit.
4-6-2016 (hotfix)
Code:
Cavedude
* Corrected the issue causing charmed NPCs to despawn when their player master leaves the zone.
4-6-2016
Code:
Cavedude
* Charmed NPCs can no longer summon.
* Fixed the error message when an item is sold to a full merchant caused by the recent bazaar changes.
* Charmed NPCs will no longer flurry or rampage.
* Damage spells will no longer produce double messages.
* Player casters and targets of spells will now always see the spell message regardless of filter or range.
* Added and replaced IsCharmed() with IsCharmedPet(). IsCharmed() by itself will return true for all NPCs, because the default typeofpet is 3. IsCharmedPet() does the IsPet() for us to avoid this issue.
* Debuffs will no longer fade on players when they charm the NPC that cast the debuffs.
* Added rule AlKabor:HighLvlCorpsesAlwaysSpawn to force NPCs 55 and over to always leave a corpse. Default is disabled until we can work out the remaining faction wars issues.
* Clicking on a NPC will now force an HP update. This "fixes" NPCs that are in a bugged (-HP) state immediately which is what happened on Al'Kabor in this situation.
* Charmed NPCs and their NPC spell targets will now have debuffs faded when the charm wears off to further prevent faction wars. Players and their spells are unaffected by this.
* NPC pets will now stay spawned and continue to attack until their hatelist is empty when their master dies or is charmed.
* Moved where hate is added to the pet when its master is attacked until after the master has checked to see if it is dead. This will cause pets to poof if their master dies in a single hit and nothing else is on the hate list.
* Added rule Character:SacrificeCorpseDepop if true, new empty sacrificed corpses will have their decay timer set to 3 minutes and rez timer disabled in pok, nexus, and bazaar. (Defaults to false)
* Some minor code support for the recent corrections made to items.lua.
* /tgb should now always hit the caster as well as the target group.
* If a player changes targets during the casting of a group spell, the spell will no longer land on the new target and instead will use the original target.
* Added DepopPet() to the client deconstructor to hopefully prevent pets from staying up forever in a couple different cases.
* Added some additional checks when charm wears off of a player's summoned pet to make sure the player is still in a valid state to relcaim ownership of the pet. If the checks fail, the pet will depop.
* If a damage shield deals all of the damage to a NPC, the player will no longer receive XP and the NPC won't leave a corpse (unless the level 55+ rule is enabled.)
* A minor adjustment to how damage shield damage is counted to avoid overlap.
* NPCs will no longer flee if they have allies nearby that are mezzed or feared.
Haynar
* Fixed pathing for pets and mobs getting stuck.
* Pathing fixes for pets following
* Adding raid members will no longer clear the list of looters on everyone in the raid.
* Updated some pathing that would cause mobs to get stuck sometimes.
* Added size compensation to hazard checks, so very large mobs like giants, are not stuck trying to step over a pebble.
* Fixed a group bug, where if you do not accept an invite to a group (or decline) and zone, then you are unable to be invited to other groups.
* Changed where packets are caught up on zoning. This should help not bug out groups.
* Changed how its determined which mobs/clients get spawn packets sent to clients, to help prevent some clients not appearing when zoning together.
Database:
Robregen
* Sarnak Casters in Chardok should no longer see invisible.
* change brownie faction to indifferent for wolf form.
* Undead Jailor in karnor's castle should now see invisible vs undead.
* Add a missing faction for Gizzleknot in South Karana.
* Kly Impecator #3 should drop viscal dagger everytime but reduce spawn chance to be more rare.
* added missing factions for most merchants in HighKeep.
* adjust spawntimer or Captain Boshinko in HighKeep
* Adjust spawntimer for bards.
* add Noble to Lozani spawngroup and adjust spawntimer.
* Enabled Sac in PoK, Nexus, and Bazaar.
* Set rule to true for sac corpse to depop after 3 minutes in PoK, Nexus, and Bazaar.
Torven
* sebilis: sebilite golem MR increased.
* Bolt spells removed from default magician NPC spell sets.(should have been in patchnote 2 weeks ago)
Cavedude
* Torpor will no longer be castable on non group members.
Script:
Robregen
* Correct the Shadowknight reward item for Plane of Sky
Cavedude
* Corrected a couple of issues that would incorrectly cause items to be eaten in the MQ code.
Misc:
Haynar
* Update Soldunga path file.
3-23-2016
Code:
Cavedude
* Rewrote how trader items are loaded. Changed the logic performed in the initial loop and added some additional sanity checks. This should help to prevent bogus or no drop items from being added to a trader's item list erroneously especially in the last couple of slots. This will also help to keep better track of items when they are moved around in the satchel while the trader window is up.
* Traders will no longer need to price all their items or remove no drop items from their satchels before starting trader mode. The server will simply skip over those items, if the client sends them.
* Fixed an issue that would sometimes cause the item in the last slot to not show to buyers, or to display as a bogus item.
* Rewrote the logic for adding a item while trader mode is running. This was required since we no longer require all items to have a price beforehand. This also fixed a bug that would allow a trader to put a no drop or bogus item up for sale.
* Replaced references of SerialNumber which our client doesn't use with inventory SlotID. This will help to ensure the proper item is being worked with across the board in the bazaar system, particularly stackable items.
* Changed the item number variable to int16 in bazaar searches, in case a buyer has more than 255 of a given stackable item.
* Fixed an issue where the bazaaar search would occasional "split" a stackable item into several items.
* Lots of general cleanup and adding/changes to bazaar logging.
* Fixed a bug with moving items to a corpse that created issues with soulbound bags. (GM only)
* Changed the error handling of the above situation to attempt to correct the problem on the fly, instead of giving up. (GM only)
* NPCs will now try to flee at regular intervals once they are below the HP threshold.
* Bazaar search for All Effects, Haste, and Flowing Thought will now work properly.
* +mana items will no longer update current mana when equipped or removed.
Haynar
* Fixed the range check for bard group spells in raids.
* Netcode updates.
* Added special handling to prevent going into packet loss.
* Rewrote how resend of dropped packets are handled.
* Changed arq responses to use a moving window for deleting ack'd packets.
* Netcode updates to limit burst packet data rate sent.
* Fixed pathing in HHK and Unrest basement.
Database:
Robregen
* Change Quillmane spawn mechanic in South Karana removing the need for scripting.
* Change Brother Qwinn and Grizzleknot spawn mechanic.
* change respawntimer on sister island to 6 minutes.
* added Wans undead frogloks in with Zols types near Frenzy room in lower guk.
* Bazaar is now an outdoor zone.
* wolf form should now be kos in FV.
Robregen/Torven
* Add a missing spell proc to "The Golem Master" in The Howling Stone.
Code:
Cavedude
* Rewrote how trader items are loaded. Changed the logic performed in the initial loop and added some additional sanity checks. This should help to prevent bogus or no drop items from being added to a trader's item list erroneously especially in the last couple of slots. This will also help to keep better track of items when they are moved around in the satchel while the trader window is up.
* Traders will no longer need to price all their items or remove no drop items from their satchels before starting trader mode. The server will simply skip over those items, if the client sends them.
* Fixed an issue that would sometimes cause the item in the last slot to not show to buyers, or to display as a bogus item.
* Rewrote the logic for adding a item while trader mode is running. This was required since we no longer require all items to have a price beforehand. This also fixed a bug that would allow a trader to put a no drop or bogus item up for sale.
* Replaced references of SerialNumber which our client doesn't use with inventory SlotID. This will help to ensure the proper item is being worked with across the board in the bazaar system, particularly stackable items.
* Changed the item number variable to int16 in bazaar searches, in case a buyer has more than 255 of a given stackable item.
* Fixed an issue where the bazaaar search would occasional "split" a stackable item into several items.
* Lots of general cleanup and adding/changes to bazaar logging.
* Fixed a bug with moving items to a corpse that created issues with soulbound bags. (GM only)
* Changed the error handling of the above situation to attempt to correct the problem on the fly, instead of giving up. (GM only)
* NPCs will now try to flee at regular intervals once they are below the HP threshold.
* Bazaar search for All Effects, Haste, and Flowing Thought will now work properly.
* +mana items will no longer update current mana when equipped or removed.
Haynar
* Fixed the range check for bard group spells in raids.
* Netcode updates.
* Added special handling to prevent going into packet loss.
* Rewrote how resend of dropped packets are handled.
* Changed arq responses to use a moving window for deleting ack'd packets.
* Netcode updates to limit burst packet data rate sent.
* Fixed pathing in HHK and Unrest basement.
Database:
Robregen
* Change Quillmane spawn mechanic in South Karana removing the need for scripting.
* Change Brother Qwinn and Grizzleknot spawn mechanic.
* change respawntimer on sister island to 6 minutes.
* added Wans undead frogloks in with Zols types near Frenzy room in lower guk.
* Bazaar is now an outdoor zone.
* wolf form should now be kos in FV.
Robregen/Torven
* Add a missing spell proc to "The Golem Master" in The Howling Stone.
3-16-2016 (hotfix)
ode:
Cavedude
* Fixed the message sent when a player buys an item from a bazaar trader. (This message was completely cosmetic, I have confirmed that the actual plat transaction was NOT affected!)
3-16-2016
Code:
Cavedude
* Greatly increased the hail range. This should help with hailing scions and other NPCs in general.
* Lowered the say and emote range slightly to reduce spam.
* Added IsUnTargetable() method to Mob, and changed several places to use that.
* Changes to the Nexus transport system to be more accurate visually.
* Fixed the issue causing NPCs to sometimes flee when they shouldn't.
* The item count will now display on Bazaar searches
* Players will now be stripped of levitation spells when entering trader mode. Levitation spells will now also be blocked when cast on a Trader.
* Fixed an erroneous double packet sent when a player buys an item from a trader.
* Fixed an issue with damage shield stacking between a spell and a song.
* Made the character creation process a bit cleaner and cleaned up the world logs a bit.
* Added encounter column to npc_types. This forces the NPC to skip the internal check done when an item is handed to them and either eats the item, or lets lua handle it.This column should be set to 1 for any NPC that accepts a hand-in as part of an encounter script. It is not needed for normal quest NPCs.
Haynar
* Fixed an issue with raids, where if a person leaves a group, the raid is not updated correctly.
* Fixed an issue with re-assigning raid group leaders, if they leave the raid.
* Removed some extra messages (not all) when changes are made to raids.
* Fixed an issue with someone leaving a group, that required in sending extra packets to the client, to allow them to be invited to other groups.
* Added support for /makeleader in raids, so group leaders can be changed.
* Raid group leaders can no longer ungroup people from different groups within their raid.
* Summon spells will no longer say you are distracted if you have an item on the cursor. The client cursor will not allow summoning multiple items that are the same, so mana and any needed reagents will be consumed. You have been warned.
* Bard Group songs in a raid, will now have a range check to group members.
* Pathing fix for mobs cutting corners.
Robregen
* Removed mail related code from UCS since client don't use it.
Database:
Robregen
* Enabled Pok stone and books that has zone with Spires.
* Enabled levitation for Nexus and Bazaar.
* Enabled binding for Nexus and Bazaar.
* Fixed world containters (Forge, Ovens, Looms, Pottery) in Bazaar.
* Fixed recipe for potion of greater rejuvenation.
* Skeletal Crusader should now drop one of the main loots.
* Added a missing NPC "a pickclaw visionary" to highkeep.
* Adjust spawnrates for warriors and raiders room in Highkeep.
* Adjust loottables for fine steel and bronze armors from warriors and raiders in highkeep.
3-9-2016 (hotfix)
Code:
Cavedude
* OSX will no longer crash when a player browses their wares in trader mode.
* Rewrote trader item deletion to be safer and less bug free. (An item desync, Application Move Failed error, and item dupe were all fixed by this.)
* Stacked items bought from a trader will now try to stack in your inventory.
* Traders inventory window will now properly update when a stackable item is purchased, but the stack was not depleted.
3-9-2016
*** Patch Highlights ***
Raid Windows has been implemented, Bazaar and Nexus is now open.
*NOTE* Pok books and Stone has been disabled to zones that has Nexus Spires.
/ooc and /auction is being disabled to stress test Universal Chat Server.
See notes at bottom for Raid Information
Code:
Cavedude
* Moved Nexus portal functionality from lua to server code. This has proven to be faster and more reliable.
* The NPCIDs of the various Nexus NPCs (A_Mystic_Voice, The_Norrath_Spires, the Scions, etc.) are all hardcoded in the code, so that we can access them to cast spells or send signals. They cannot be changed in the DB, or the system will break!
* Rule Zone:EnableNexusPortals can be used to disable the Nexus portals (defaults to true.)
* Zones that use the Nexus portal system will not idle when empty when the rule is enabled.
* Player corpses will now retain any illusion the player had on them at the time of death.
* Implemented raid XP.
* Updated special bind area rules to use coords found in the client. Thanks demonstar55 for the decompile!
* Implemented lua methods eq.pause_timer("timername") and eq.resume_timer("timername"). This allows developers to pause and resume the given timer on the current NPC.
* Fixed an issue with clicky items using the wrong level for their formulas.
* Fixed an issue where some skills could incorrectly appear on a trainer's list.
* Shadowknight and Paladin epics will now do bash damage.
*** Bazaar Trader rewrite:
~~ Rewrote much of the trader code to work more efficiently and clear up some minor bugs I found.
~~ Moved all functionality from encode/decode to native code.
~~ Fixed a few structs that were a bit off.
~~ Traders will now receive a message in their window when a player browses their wares. (Thanks Haynar for figuring out the struct!)
~~ The buyer's client will now correctly update when a seller changes the price or adds an item.
~~ Added a new rule AlKabor:AllowPriceIncWhileBrowsing. When false, a trader cannot increase the price of an item while another player is browsing their wares. (Defaults to true.)
~~ Updated the bazaar.map. PVP will now work in the arena area (DB change also made for this fix.)
~~ Removed bazaar.path as it is meant for the newer version of the zone.
~~ Bazaar traders can now be used by multiple players simultaneously.
~~ Trader mode will now end if the trader goes LD.
Haynar
* Added support for raids. (see bottom of this note for functionality)
* Using guildmotd by itself will return the current guild motd.
* The guild motd will only be sent when intially logging in, not every time you zone.
* Fixed an issue where players will move slightly on logging in, when their x or y coordinates are negative.
* Changed how zoneinpacket_timer is handled. Changes are to prevent skipping spawn packets, between sending of bulk spawns and completion of client connecting process. This will help ensure spawn packets are all sent, before mob position updates start.
* Fixed a minor pathing issue, used for culling end of route, when target moves closer. The end node to be culled, was not being trimmed correctly.
* Fixed an issue where moving mobs would pause and warp forward.
* Improved some of the mob movement code by removing some redundanct code pieces and sending through a common function.
* Reduced the bulk packets sent when zoning in for npc movements.
Robregen/Speedz
* removed an extra safe_delete that was crashing queryserv
Database:
Robregen
* removed charges from summoned: wisp stone
* reduced the max hit on wraithbone champion in Dreadland.
* add Sarnak Courier to another spawngroup so to give better chance to spawn.
* reduced the spawntimer to the standard 6 minutes to the area near the ruins where Sarnak Courier and its PH spawns.
* Shovel of Ponz should be clickable (reclaim energy) from inventory by any classes.
Script:
Robregen
* fixed the faction requirement for Shaman Epic for those are doing in order.
Hakarri
* Furtog Ogrebane: Fixed Faction Rewards for Ogre War Maul, Randomized Coin Reward
* Garuc Anehm: Fix message trigger
* Added missing dialogs for the following NPC: Brohan Ironforge, Belyea K'Jartan, Dren Ironforge, Haggle Baron Klok, Hurrieta Ironforge, Lanhern Firepride, * Ratraz, Svenia Ironforge, Ton Firepride, Suuspa Clanim, Joffrey Clay, Crow, Shenro Kazpur
* Mare X'Lottl: Added missing turn in quest
* Guard Weleth / Lieutenant Dagarok / Nesiff Tallaherd: Reduced XP Reward for Crate Quest because it was too high. Additionally, the Quest now requires at least indifferent faction
* Chesgard Sydwen: Lowered XP Reward for Bandit Sash Quest
* Gharin: Reduced XP Gain from turn in
* Hanns Krieghor: Added correct turnin message for Stanos Head and correct Faction Rewards
* Added missing dialog regarding donation quest for the following NPCs: Largon Welsh, Danaria Hollin, Solani Dayadil, Gahna Salbeen, Moran Smith, Bassanio Weekin, Barthal, Rabley Trumend, Ton Firepride, Iala Lenard, Cassius Messus, Bait Masterson, Gerault Takenmaul, Rodgar the Tall
* Lashun Novashine: Added missing dialogs, Fixed spell being cast when turning in gold, Fixed spell being cast when turning in bone chips, Now requires at least 2 bone chips to complete
* Serna Tasknon: Fixed Faction Reward for Shark Powder Quest
* Tonmerk Plorsin: Added missing Dialogs, Added faction check to start shark powder quest, and Fixed Faction Rewards for shark powder quest
* Chesgard Sydwen: Added missing dialogs and Added missing faction checks for blanket quest
* Daedet Losaren: Added missing dialogs, Added missing faction checks for specific trigger messages, and Added Cash Reward for Beetle Eye Chest Quest
* Priestress Caulria: Fixed Faction Rewards for Rabid Grizzlies and Fleshy Orbs Quest
* Lempeck Hargrin: Added alternate quest ending for turning in a bad Prime Healer Potion and Added missing dialogs
* Astaed Wemor: Added missing faction checks for trigger messages, Added missing dialog, and Added possibility to return a bad cure for Lempeck Hargrin
* Whysia Flock: Added Quest and Dialog for "Recharging" the Shining Star of Life
* Cassius Messus: Added missing faction check for starting Lisera Lute Quest and Added missing dialog
* Flynn Merrington & Moodoro Finharn: Added missing dialog trigger
* Anson McBale: Adjusted Faction Check to spawn Stanos and Made sure Stanos is a unique spawn upon handing in the pouch
* Lomarc: Added missing Quest Package from Lomarc
* Renux Herkanor: Added missing Quest Package from Lomarc and Added missing message triggers
* Den Magason: Added missing Quest Ghil's Package and Fixed Faction rewards for Package for Den turn in
* Ghil Starn: Added missing Quest Ghil's Package and Added faction checks for starting Package of Dan Quest
* Raz The Rat Misk: Added faction checks for turnin Quests
* Phin Esrinap: Fixed message dialogs regarding Konem and Fixed Faction Reward for Note from Konem
* Konem Matse: Fixed faction rewards for Phin's Message and Added Dialog
* Seta Bakindo: Added faction check for starting Tomer Quest
2-24-2016 (hotfix)
Code:
Haynar
* Fixed an undersized buffer issue that could cause player inventories to appear empty.
2-24-2016
Code:
Cavedude
* Fixed SE_CurrentHPOnce not updating the client properly.
* Fixed the long time spawn_conditions crash.
* Bind Sight will now be castable on targets in a different region.
* Players with See Invisible will now properly see other players who are hidden/invisible server side.
* Added a spot where Voice Graft should be faded when a pet leaves.
* /who all lfg will now function.
* /who all will now use a player's base race instead of their illusion race.
* /who is unaffected by both changes.
* Some minor logging changes.
Haynar
* Updated how character inventory is sent when zoning. This should improve zone times.
* Added checks for items in no rent bags, so their deletion can be logged better, if the no rent bag expires.
* Returned position update frequency to original setting.
* Fixed a legacy netcode issue that makes it look like client is lagging, when they really aren't.
* Added some checks to improve the reliability of trading and prevent item loss.
* Clients will no longer get group bugged, when they accept joining a group, but the group is already full.
* More fixes for groups getting bugged when someone gets disconnected while zoning.
* Changed some pet checks to be less CPU intensive.
Torven
* The melee mitigation algorithm has been updated for more accuracy. Very low level player and NPC mitigation in particular will be noticably more accurate.
* The player character damage multiplier function is now more precise.
* Weapon elemental damage now uses a simple function taken from a decompile instead of using the spell resist function. (decompile credit: Demonstar)
* Ripostes may now trigger from other ripostes. Client attacks while under a riposte discipline are now unripostable.
* AC buffs on NPCs fixed to not increase AC more than desired.
* Avoidance bonus from agility capped at 200 agility.
* Melee avoidance and mitigation AAs are now implemented and verified to be correct.
Database:
Robregen
* fixed faction for Bloodgill Goblins in LoIO.
* fixed the mushroom groundspawns in North Kaladim.
* Added a missing NPC "Draketamer" to Frontier Mountains.
* Added some missing static Gnolls in Blackburrow.
* Fixed the gate in Sol A to open all at once.
* Added a missing NPC "a soothsayer goblins" in Temple of Droga.
* Added missing loot "Drogan obsidian dagger" to goblin whipcracker in Temple of Droga.
* Added missing loot "Write of Di'Zok" to Korucust's Courier in Chardok.
* The door to Aeris Greymalkyn in Highkeep should now be perma-lock.
* Added a missing spellset to Froglok Dar Wizard in Sebilis
* Added a missing faction to "a rotting skeleton" in Nektulos Forest.
* All giants and cyclops including Hill Giants, Seafuries, and Forest Giants should now be immune to stun and mez (verified on live)
* Ssolet Dnaas should now be KOS to all except Iksars.
* Added a kobold missionary to Steamfont as part of a Eruden / the Warren quest.
Script:
Robregen
* restricted turn in to Surran on the appropiate islands for Plane of Sky.
* added timer to Bazzt_Zzzt in Plane of Sky to depop within a time limit.
Harakari
* Tazgar - Added faction hit on Hail and message triggers
* Tam Visilin - Added Message Trigger
* Pungla: Added message triggers and turnin
* Lokar To`Biath - Fixed Faction Rewards for Red Wine and Scribe of Dal Quest; Added missing text trigger
* Rysva To`Biath - Fixed Faction Rewards for Scribe of Dal / Book of Turmoil Quest
* Sister of Erollisi : Added missing text triggers
* Styria Feamon : Fixed Faction Reward for Pirate Earing and Erollisi Bracer Quest and Fixed Reward Messages
* Sinnkin Highbrow : Added missing message trigger and Fixed Faction Reward
* Phloatin HighBrow : Added missing text trigger
* Fixed Faction Reward for Regurgitonic Quest
* Frostbite: Add missing message trigger and added faction reward and text for Regurgatonic Quest
* Te`Anara: Added faction checks for starting Regurgitonic Quest
* Gregor Nasin: Fixed Faction Reward for turnin related to Barkeep Compendium
* Clurg: Added Faction checks for message triggers regarding clurgs revenge and the exotic drink quest
* Clurg: Added real message for starting imposter Quest
* Clurg: Fixed Faction Reward for turnin of Clurgs Revenge and Exotic Drinks
* Clurg: Added required faction checks for turnin of Clurgs Revenge and Exotic Drinks
Misc
Haynar
* updated hole pathfile.
2-13-2016
Scripts
Robregen
* disabled MQ on VP related quests.
2-11-2016 (hotfix)
Code:
Haynar
* Fixed an issues with groups sometimes getting bugged, when group members go linkdead.
* Changed how client positions updates are sent to nearby clients. This will smooth out the big data spikes that happen when there are several players nearby.
* Reverted the far distance mob update changes, that were causing mobs to warp a lot when you try to chase them down in big zones like skyfire.
2-10-2016
Code:
Haynar
* Fixed an issues with groups sometimes getting bugged, when group members go linkdead.
* Changed how client positions updates are sent to nearby clients. This will smooth out the big data spikes that happen when there are several players nearby.
* Reverted the far distance mob update changes, that were causing mobs to warp a lot when you try to chase them down in big zones like skyfire.
2-5-2016 (netcode hotfix)
Code:
Haynar
* Added netcode fixes for arq response resends, and rolling over when reaching max value.
code:
Haynar
Code:
Haynar
* Updated Netcode
* another Netcode update.
1-30-2016
Code:
Haynar
* Teleport door fix.
* Made Z adjustments for fixed size dragons. This will help prevent them from hopping while moving or falling below the world.
* Fixed some spell interrupts which were incorrectly triggering spell gem cooldowns.
* Netcode Update.
Database:
Robregen
* removed Tarnished and Fine Steel conversion recipe
* celestrial essence recipe changed to use appropiate container and skill for the era.
* herald Telcha in Chardok should no longer aggro.
* added burn wood staff to other golem loottable in Chardok that were missing it.
Script:
Robregen
* Fixed the enchanter epic script in Kaesora for Freed Soul to AE upon death.
1-28-2016 (real patch) IN the LAND  of the hotfix real patch is king
the code patch from yesterday didn't happen since I forgot to update the master repo.
code only patch: http://www.takproject.net/forums/index.php?threads/1-27-2016.4959/
Database:
Robregen
* skeletons in Kaesora should no longer flee.
Script:
Robregen
* fixed stanos trigger spawn to be unique.
1-27-2016
Code:
Haynar
* Changed attempting to pick up duplicate lore items, to totally block the client from picking it up. Added prevention of picking up bags which contain lore items you already possess.
* Fixed an issue with Race 63 (Vah Shir beastlord pets) z_offset, which is calculated different than other mobs. This will fix the problem with them bouncing.
* Pets guarding will only send position updates now, when their heading changes. They were sending some unneeded updates.
* Vah Shir Beastlord pets, will no longer bounce rapidly when guarding.
* Updated Z_Offsets.
* Shaman pets and Barbarian Beastlord pets, will no longer jump while guarding.
* Updated bestz when a pet is set to guard, so it will not bounce. This happened if pet was set to guard, right where it was spawned.
* Fixed an item desync issue associated with forage.
* Adjusted fizzle rate to lower fizzle chances.
* Fixed a potential item desync, associated with summoning items utilizing spells
* Reduced fizzle chance for hybrids.
* Added message handling to give the proper trade request reply, when someone has their client set to accept trades from nobody, or only accepting trades from their group.
* Updated mob position updates at a distance to help with data spikes and LDs. Sorry this messes up tracking distance sorts, but will have to do until I put something better in place.
* Added more adjustments to ranged attacks.
* Updated Z calculations for mobs while pathing, and when they reach nodes, using their z-offsets.
* Changed some logic in pathing, where sometimes a node could be reached, but it would not update position to that node.
* Updated min z range for mob updates, to use a minimum value of 200.
* Updated pathing code to work better for kedge.
* Fixed an issue where spell gems would flicker after a spell is finished, causing spells to sometimes be interrupted or certain spell gems to end up getting locked out for longer durations.
* Added additional commands to allow better management of doors associated with pathing node neighbors.
* Fixed a possible item loss associated with spells that summon items. This prevents items being consumed, such as during gem imbues, or enchanting ore, but not giving you the end result item.
* Moved LoS checks server side before the fizzle checks.
* Fixed an issue with checks for items cast from inventory slots, to be treated the same as procs for applying hate. The check was being performed too early, causing unexpected results.
* The Greenmist Recourse from Greenmist should now work correctly.
Cavedude
* Weaponshield will now correctly last 20 seconds (Thanks Torven for confirming with logs!) instead of 15.
* Corrected an issue with looting 2H items.
Surron
* Beneficial str buffs will now say 'your spell did not hold' instead of landing without a buff icon on targets affected by rez effects
* str spells wont stack with rez if the str modifier is in slot 1
* fixed bug where HOWLERS (seb/HS portals) would not allow subsequent clients to click using keyring
* doors with opentype 58 were not being closed, now they are... no longer have to specify name = 'HOWLER' like previous commit
Database:
Robregen
* Readjust Epic Mage pet size.
* changed the respawntime for bloodgill maruader to 8 hours in lake of ill omen
* changed the respawntime for an ancient jarsath to 8 hours in FV.
* fixed shroud of undeath to proc the appropiate lifetap instead of a root.
* spectral type NPC and Failed Crypt Raider in Kaesora should now flee at low health.
* Thunder Salmon should be fishable at lower skills.
* The Storm Mistriss in plane of sky is now disabled until later expansion.
* Hate mini boss will now spawn instantly at server reset.
* fixed recipe for Bag Of Shark Remains to use correct shark skin component for the banacle BP quest (Thanks Harakari from eqc)
1-13-2016
Code:
Haynar
* Added size adjustments to client ranged attack distance calculations. This makes client and server range distance calculations to be more in agreement. This will minimize out of range messages from the server, when the client thinks you are in range.
* Netcode update.
* Updated buffer sizes for mac packets which undergo Deflate.
* Updated some logging values for packet debugging.
* Changed how initial mob position updates are sent when zoning. This reduces the burst traffic right after zoning is completed up to 80%.
* Updated how mob position updates are triggered for mobs that are stunned. This should reduce warping/ghosting in some situations.
* Improved NPC target management during attack rounds.
* Updated pet hate management to be more accurate with how they behaved on AK.
* Changed fixes for targets becoming invalid after charm breaks, to not be so hackish. Updated to also include additional spells that would have also caused client targets to break.
* Pets will now face the correct direction while guarding.
* Distance sorting for tracking should now be more accurate.
* Spell: Summon Companion, will no longer work on charmed pets.
* Added Support for Unswervering Hammer of Faith and Flaming Sword of Xuzl.
* Fixed an issue where the client thinks a spell target is in range and allows to begin casting. But server thinks the target is out of range, and interrupts the spell and shows out of range, at finish of spell. Their range calculation methods for spells should be better in sync now.
* Memory blur line of spells should now function properly.
* Pets will no longer be transported with their owners during succor/evacuate/translocate. Closed a loophole where they could sometimes.
* Improved hatelist management for rooted mobs. Rooted mobs will now prefer the closest PC in melee range, over NPCs (pets) in melee range. If they summon, they will only do so if nobody is in melee range.
* Added an adjustment to client position updates, so other clients should no longer bounce when you see them.
* NPCs should buff and heal other NPCs less, which are too far above or below them.
Haynar/Torven
* Updated how summoned stackable item quantities are calculated.
Cavedude
* Spell restrictions for group spells/MGB will now work properly.
* Fixed an item desync issue with dropped lore items.
* Added QueryServ logging for item desyncs. The log messages are the same as the inventory logsys entries for now. The new table is added by world automagically.
* Players will now be kicked when they desync to prevent item loss.
Stairs (P2002)
* make loginserver log message better
* dont push npc's if perma rooted
Database:
Robregen
* remove proc effect from Warrior Epic (Blade of Tactics) since the worn effect is already the effect.
* increase the size for Mage Epic Pet.
* change blast spell on Mage Epic Pet to be a proc instead of a cast.
* Tiblner milnik should no longer be on FV faction for mage epic turn in.
Robregen/Haynar
* adjust the stats for temp pets (cleric hammmer, wiz sword) based on live parsed data.
Script:
Robregen
* simplify the questsay for Plane of Sky shaman Test of Health quest.
* readjust the trigger timer for Keeper of Soul in Plane of Sky to be a variant between 48 to 85 minutes to spawn.
* readjust the global to 4 hours once Keeper of Soul in Plane of Sky timer is set.
12-31-2015 (hotfix)
Code:
Haynar
* The real fix for flickering spell gems on mana updates. This fixes bards too. Sorry bards.
12-30-2015
Code:
Haynar
* Updated Fizzle Calculations.
* Charm fading target corruption fixes ... again.
* Updated mobs appearance (sitting, standing, crouch, etc.) in bulk spawn packets, to reflect their position accurately.
* Removed sending appearance updates, for non-standing mobs, during zoning process, since it goes out in spawn packet.
* Dot Damage will no longer break invis.
* Alliance spells will no longer cause aggro.
* The client spell gems will no longer flicker all the time on regular OP_ManaUpdate's.
* Netcode improvements
* Removed some position update rounding that was causing mobs to jump.
Robregen
* Add EVENT_TICK for NPCs -This event fires at the start of the tick processing so we can script on the actual tick. (Demonstar from EQEmu)
* Adds IsBlind() and IsFeared() functionality to Perl and Lua. (KinglyKrab from EQEmu)
Database:
Robregen
* Add krup shammy and krup knight to the krup wizard spawngroup roaming near the sepsis/necrosis scarab camp.
* Remove the spellset from Elemental Crusade in the hole since it is a warrior class for that version of hole.
Script:
Robregen
* Added various missing text in Halas, Eruden and
Qeynos.
* Removed an out of era quest for Yakem_Oreslinger
* increase spawn chance for tainted seahorse in kedge keep.
12-16-2016
ode:
Torven
* Being drunk will now reduce to-hit and avoidance by the appropriate values. (credit to Demonstar for the client decompiles and pseudocode)
* Worn item atk is now factored into offense calculations.
* Worn item atk is now capped at 250.
* AC from buffs is now calculated correctly. AC buffs will be much more effective now.
* Avatar from primal weapons is now hardcoded to add to item atk instead of spell atk as per Demonstar's client decompile, making atk from primal weapons subject to the item atk cap.
* Bonus mitigation from agility is now calculated using the eqmac client formula instead of the modern EQ formula. (credit to Secrets for the decompile)
* Bonus avoidance from agility is now estimated to approximate the eqmac client formula instead of the modern EQ formula.
* Spells with a -hate component will now work correctly. (e.g. jolt)
Robregen
* Readjust wolf size (thanks to Harakiri suggestion)
* change default value in rule tables for succor failed chance to .005 to refect the .5%
Database:
Torven
* hole: Slizik the mighty is not longer flagged immune to magic.
Robregen
* Added a mixture of NPC in Sol A to be more diversify.
* Added a misssing forage "Papaya fruit" to Shadeweaver
* Removed Cactus pulp and Ro Date from Oasis's forage list
* Forager and Hunter in Trakanon should now drop spectral bow 100% of the time.
* Rogue should now be able to sneak and hide in Sebilis except for the crypt area.
* a alchemist's acolyte in Chardok should now always drop an item.
* Dread Widow should now show the correct model in Dreadland.
12-9-2015 (hotfix)
Code:
Haynar
* Fixed issue with GM flag being set in ServerZoneEntry.
* Fixed issue with anon flag in ServerZoneEntry.
12-9-2015 crash fix and misc
Code:
Torven
* conning pets crash fix
Haynar
* Fixed some rounding issues with clients vs server locs.
* Client and Server will round their positions the same way now, when converting x and y coordinates from float to int.
* Changed encoding for ServerZoneEntry_Struct to be direct, so as to not round positions and heading. This helps prevent client loc and heading changing when logging in.
* Fixed an issue with the z adjustment for clients, using zone geometry when logging in. It was not updating correctly based on the real value for bestz.
Robregen
* Changed Datatype to Real for Succor fail chance and set it to 0.5 by default.
12-2-2015 A ROOM FULL O SCALES AND PILLOWS VP is now open.
Highlights:
Veeshan's Peak is now open.
Code: https://github.com/EQMacEmu/Server/pull/549
Haynar
* Packet Logging improvements.
* Moved some logic for some extra checks associated with logging.
* Server to Client packet logging, will now show the actual opcode along with the translated name. The emu opcode was shown before, which provided no value added.
* Charm fixes - again.
Robregen
* change the default setting for TradeskillSkillUpModifier to 0
* Fix mob overpopulation on "idle" zones (Noudess)
Torven
* NPCs will now be more selective when deciding which spell to cast.
* NPCs will now only cast slows on melee classes.
* Targeted AoE spells that hit entities other than the caster's target will now check LoS with the target instead of the caster again.
* Low health aggro now tapers with distance after 100 distance.
* NPCs may now charm pets.
* Summoned pets that get charmed will now return to their owners when charm fades.
* NPCs that get charmed by other NPCs will no longer hate the casting NPC after charm fades.
* NPCs may now have multiple charmed pets.
* Pets charmed by NPCs will now get that NPC's top hated entity and a random hated entity in their hate lists, with a very slight preference for the random entity.
* Summoning a pet will now add a very small amount of hate, subject to witness checks.
* Attempting to charm an NPC while having a pet will now result in the proper 'only one pet at a time' message instead of 'this NPC cannot be charmed.'
* NPCs with heal spells will now start healing at 50%, up from 35%.
* Non-pet NPCs will now be able to land spells on clients in different regions. (i.e. underwater)
* Pet backstabs will now do max hit * 3 damage.
* Mana reduction from specialization now applies to every spell cast.
* Charmed pets no longer cast the gate spell at low health.
* Accepting a resurrection spell now removes the player from hate lists.
* Intellectual Superiority and similar buffs will now reduce fizzle rates.
* Fizzle code reworked:
Minimum fizzle chance is now 2%.
Fizzle reduction from prime stat is now 1% per 10 above 75, capped at 12.5%.
Bard fizzle prime stat is now either char or dex, whichever is higher.
Fizzle reduction from specialization is now specialize skill / 10.
Note that some spells are intended to still have a high fizzle rate.
These changes are not precise. They are estimates based on limited data, and may be changed in the future.
Database:
Robregen
* sepsis / necrosis in Sebilis should now drop a gem everytime.
* readjust sepsis / necrosis spawnrates in Sebilis.
* Changed item name from 'Dismembered Finger' to 'Ring-scored Talon'
* Changed item name from 'Dismembered Thumb' to 'Intricate Toothed Ring'
* Changed item name from 'Mutilated Forearm' to 'Petrified Talonless Claw'
* Drolvargs should now be kos to halflings.
* fixed the loottable for Quid Rilstone so Siryn Hair should drop more commonly than Man-o-War
* Fixed the loottablse for Nilipus so he should now always drop a brownie (parts or others)
* added missing loottables for 'a mosquito' in cabilis catacomb.
Torven
* Trakanon's atk reduced.
* Resist magic removed from default NPC spell sets.
11-18-2015
hotfix: revert the following:
* Players that have charmed mobs targeted, will no longer have their target go invalid after charm breaks. No more re-targeting required.
11-18-2015
Code:
Torven
* Forget chance of static NPCs returning to their spawn points after a feign death is now back to 100%.
* Two minute forget timer for feign death has been increased to 10 minutes.
* Lull critical fail chance is now 93% - Charisma * 100 / 375, 15% minimum.
* Lull fade early chance is now 1% * (targetLevel - casterLevel + 2) per tick.
* Archery was doing twice the damage it should have and has been corrected.
* Critical hits and crippling blows will now do more accurate (but not precise) damage.
* Pets should no longer attack feigned players and will no longer aggro on DoT ticks.
* Unconscious, stunned, sitting, crouched, or feigned clients will no longer riposte.
Haynar
* Players that have charmed mobs targeted, will no longer have their target go invalid after charm breaks. No more re-targeting required.
* Fixed SE_Tossup on clients
* Fixed some angles associated with spell pushback and pushup.
* Fixed a couple of potential memory leaks.
Cavedude
* Added NPC special attack to allow any NPC to use Warrior combat skills.
Database:
Torven
* Pet hp regen has been adjusted. Pets will also now regen in combat. (this went in with the hotfix but was not mentioned)
* Some raid boss NPCs that are not warriors will now possess the warrior skills of dodge, parry, riposte, kick, and bash.
* Outdoor Kunark dragons will now drop 3-4 items randomly and 2-5 spells randomly instead of always 4 and 4.
* Trepidation removed from NPC spell sets, along with some other not-as-noteworthy spells.
* Some group buff spells removed from NPC spell sets since NPCs don't cast them on others.
* Several priority changes made to the enchanter and shaman default spell sets.
* NPCs will no longer ignore charmed pet tanks after a certain number of entities get on their hate lists. This disables what was implemented in the previous patch.
Robregen
* Replace roambox with Grids in Skyfire so mobs will no longer fall under the world.
* Added a missing mob "a_goblin_fanatic" in Droga
* add zol knights and kor shamans to the spawngroups near Sebilis Entrance.
* all knights in Sebilis should now see invisible.
* Pained soul and rotting skeleton should now be indifferent.
* Adjusted respawntimer for Pained/PH to 6:30 to 7 minutes.
* made some adjustment to Dark Elf Agnostic faction toward Arcane Scientist to be dubiiously.
* Hunter and Forager should no longer be buffed to sow.
* removed the phantom sword on goblin dirtscriber in Droga.
* add idol of the underking to Slizik the mighty in hole.
* add missing loot smoldering brand and adjust imbued granite spaulders on elementals in hole.
* increase spawn chance to 5% on drolvarg captain in Karnor
Script
Robregen
* corrupted seafury cyclop should no longer despawn.
* adjust faction hits or the investigator quest line.
11-8-2015
Code:
Torven
* Hotfix for AoE LoS checks in outdoor zones
Database: (non hotfix related)
Robregen
* zol, dar, bok, and krup knights in Sebilis will now see invisible.
* increased the spawn chance for Glubbxink in Butcherblock.
11-4-2015 NERFING THe TECKNO VOX TRICK!?!?!!?

Revision as of 06:15, 15 March 2019

Probably wont keep his here but i do need a place to store a scrape of them for search ability. Date offset +9. table offset +30. why isnt this https? script output is trashfire will writr a new one tomorrow meh. beautify this.



3-6-2019 Hightlight: Cazic Thule is now live. credit to Torven

Code: Haynar

  • NPCs that are rooted, should face their top hated target when no one is in combat range.
  • Changed the defaults for adjusting best z, when mobs are in water. The default setting now checks if the mob is in water, and only adjust their z to the ground if they not in water. This should prevent cases where mobs seem to always be on the bottom.
  • When someone is charmed, it was removing that entity from only npc hate lists. If a player is charmed, they will also have a hate list. So now a charmed entity will be removed from all hate lists. This helps prevent two charmed players from fighting each other.
  • Fixed an issue where some spells, will not land when the player has all buff slots filled. Some spells like Antidote were incorrectly being identified as having an associated buff. They should now land correctly, whether buff slots are full or not.

Database: Robregen

  • East Karana: change weak poison to strong poison to crag spiders.
  • qeynos catacomb: an undead knight should no longer be kos.

2-20-2019

Code: Robregen

  • ZoneDatabase::GetKarma crash fix credit to Akkadius
  • Fixed a possible world crash.

Database: Robregen

  • Shadeweaver: Certain Tegi in Cave should now only spawn at certain times(work is still in progress)

Torven

  • hollowshade: Kite limit increased to 200.

Script: Robregen

  • The Nitrates and the Assassin: added a missing reward item from Gerael Woodone to give to Captain Tillin.

2-6-2019

Code: Haynar

  • Rooted mobs should face their targets better.
  • Added a potential crash fix in streaming code for chat channels.
  • Changed some of the keepalive code for chat channels, to help keep channels connected better with clients. There were situations where the keepalive from the server would never send to client. In low traffic situation, routers could close the connection sometimes.

Database: Robregen

  • South Karana: Brother Qwinn should no longer be KOS.
  • added a missing recipe for Griffon Casserole.
  • Fixed the combine recipe for Toughened Sinew Lashings.
  • Sinew Stretching Dowels should now return if Toughened Sinew Lashings combine is a success or a fail.
  • Ceremonial Strainer should now return if Reactive Sealant Soak combine is a success or a fail.

Script: Robregen

  • Crushbone: Slave keys turn in for a dwarf female should now give the correct faction hits.
  • fixed a Minor dialogue typo in Rallic Aristos

1-23-2019

Code: Haynar

  • Rooted mobs should attack mobs close by better.
  • Improved some mob pathing in water.
  • Pets trying chasing mobs in water should do a better job. They shouldn't go off in weird directions and get lost so much.
  • Mobs pathing home, or to fixed locations should navigate obstacles better. This should improve cases where mobs get stuck trying to pathing to waypoints, or back to spawn points.

Torven

  • Fix for NPCs getting stuck in casting
  • Improvements to the recent wp_spawns option

Database: Robregen

  • Dawnshroud: A Blazing Rockhopper should now emote correctly
  • Kithicor: Readded a missing faction to DE rogue epic NPC.


1-9-2019

Code: Torven

  • Fixed quest timers bugging out in some circumstances. (e.g. akheva trap spawns)
  • Added a feature to spawngroups that allows developers to randomize the location where NPCs may spawn when using grids. This will prevent certain outdoor spawns from being campable.

Haynar

  • Blind fleeing mobs should face their target now if in combat range.
  • Fixed some issues with HP of targets never updating, if experiencing some packet loss.

Database: Torven

  • vexthal: Respawn timers on TVX wing trash increased significantly. (doubled)

Quest: Torven

  • grimling: Raids four (Necin) and five (Vadrel) implemented. All six raids (the war is raid six) are now fully implemented with high accuracy.
  • grimling: Wave spawn timers for the raid events were changed to more closely match AK. (roughly increased by about 30%)
  • grimling: The officer cloaks (cloak 6 in the series) and the hero cloaks (cloak 7 and the final cloak in the series) are now obtainable.
  • ssratemple: Blood should no longer spawn prematurely.
  • necropolis: Jaled Dar`s shade despawns again.

Robregen

  • Innoruuk Disciple: Update and adjust faction reward.
  • Drenic Garrison: Enabled MQ turn ins.

12-26-2018

Code: Torven

  • Dire charm pets now take exp scaled to damage rather than two flat tiers. Approximate exp gained will be roughly the same. (either more or less depending on damage)

Haynar

  • Pathing fixes for ramps

12-12-2018

Code: Torven

  • NPC AI will now cast heals while chasing players.
  • NPC spellcast AI will now cast detrimental spells a bit more aggressively.
  • Lifeburn now takes the caster down to 20% hp instead of 10 hp.
  • New database fields were added to allow NPCs to have individual experience multipliers and bonus avoidance.
  • Undead/proximity aggro NPCs are no longer restricted to melee range when seeking targets that are not the tank.
  • Significant additions to Haynar's anti mass-kiting logic.

Haynar

  • Add initial code which limits kite/train sizes.
  • Pathing updates.

Database: Robregen

  • Factions: Factions throughout Norrath including Kunark, Velious, and Luclin has been adjusted to be more accurate.
  • Ocean of Tears: Added a missing NPC "a greater skeleton"
  • Ocean of Tears: a gargoyle and a greater skeleton will now aggro on each other when close in range.
  • Ocean of Tears: added a missing pathgrid to a gargoyle and a greater skeleton.
  • Ocean of Tears: AC and it's PH will now roam the island.
  • Game command: disabled #loc

Torven

  • templeveeshan: Symbol drake respawns are now 7 days +/-12 hours.
  • veeshan: 25% experience bonus applied to non-dragon NPCs which brings their exp gains more in-line with log data.
  • vexthal: Small avoidance bonus applied to most boss NPCs.

Script: Robregen

  • Ak'Anon: Windlebeck Tobokog should now accept the parchment and give out the kit as the reward.

Torven

  • vexthal: The TVX encounters have been modified in an attempt to mimic behavior observed on Al'Kabor.

Harakiri

  • Lomarc Already uses a Death Emote from DB
  • Beek_Guinders Fixed Faction Reward for Gather Quest
  • Lars McMannus Added missing Text Triggers
  • a hermit Fixed Faction Reward for Winds of Karana sheet 1
  • Rueppy Kutpruse Added Faction Check for stout Quest
  • Sir Morgan Add missing dialogue and message for turning in the wrong amount of gold/item
  • Squire Wimbley Add dialogue
  • Sir Morgan Fixed Reward, was giving out Sonic Wolf Claw Earring instead of Drom's Champagne
  • Uner Gnarltrunk Deputy Tagil's Debt Quest - Added Faction Check and Fixed Faction Reward
  • Beek Guinders Adjusted Faction and coin Reward for Cleric Supplies Quest
  • Toelia Snuckery The Torn Pouch Chomper Quest added Faction Checks and Fixed Faction Reward
  • Silna Songsmith Fixed Mail Quest text to indicate the correct person to deliver to.
  • Felisity Starbright Fixed Faction Reward for Mail Quest Fixed Message for Mail Quest
  • Deputy Eigon Added Hail Trigger Fixed excessive Cash Reward
  • Marshal Anrey Added Faction check for Leatherfood Raider Quest
  • Xelha Nevagon: Added missing faction based text/corrected reward text and added rewards. Increased faction requirement for cyclops eye to kindly. Improved xp and coin reward.
  • Gren Frikniller: Fixed Faction Reward for Broken Heirloom turnin
  • Sir Lucan D-Lere - Add correct turn in message for traitor quest, fix faction rewards for traitor and messenger intercept quest and add money rewards
  • Dire Charm ability will once again reset on failures.
  • Updated pathing logic to allow mobs to navigate over water obstacles better.

Robregen

  • excludes Luclin zones from being flagged as dessert zones (area that consumes more water than normal)

Database: Torven

  • Minor statistics adjustments to many NPCs in several zones. Most notably, Acrylia Caverns NPCs will hit harder.
  • thegrey: a shimmering rockfiend's spells removed.
  • thegrey: a boulderling, a Shissar Revenant and a Shissar Stalker given their respective procs.

Script: Torven

  • grimling: Scout Danarin and Scout Derrin's raids have been re-scripted for accuracy.

Misc: Haynar

  • Update pathing to the following zones: Katta, VT, Grimling, and Sseru.

12-12-2018

Code: Torven

  • NPC AI will now cast heals while chasing players.
  • NPC spellcast AI will now cast detrimental spells a bit more aggressively.
  • Lifeburn now takes the caster down to 20% hp instead of 10 hp.
  • New database fields were added to allow NPCs to have individual experience multipliers and bonus avoidance.
  • Undead/proximity aggro NPCs are no longer restricted to melee range when seeking targets that are not the tank.
  • Significant additions to Haynar's anti mass-kiting logic.

Haynar

  • Add initial code which limits kite/train sizes.
  • Pathing updates.

Database: Robregen

  • Factions: Factions throughout Norrath including Kunark, Velious, and Luclin has been adjusted to be more accurate.
  • Ocean of Tears: Added a missing NPC "a greater skeleton"
  • Ocean of Tears: a gargoyle and a greater skeleton will now aggro on each other when close in range.
  • Ocean of Tears: added a missing pathgrid to a gargoyle and a greater skeleton.
  • Ocean of Tears: AC and it's PH will now roam the island.
  • Game command: disabled #loc

Torven

  • templeveeshan: Symbol drake respawns are now 7 days +/-12 hours.
  • veeshan: 25% experience bonus applied to non-dragon NPCs which brings their exp gains more in-line with log data.
  • vexthal: Small avoidance bonus applied to most boss NPCs.

Script: Robregen

  • Ak'Anon: Windlebeck Tobokog should now accept the parchment and give out the kit as the reward.

Torven

  • vexthal: The TVX encounters have been modified in an attempt to mimic behavior observed on Al'Kabor.

Harakiri

  • Lomarc Already uses a Death Emote from DB
  • Beek_Guinders Fixed Faction Reward for Gather Quest
  • Lars McMannus Added missing Text Triggers
  • a hermit Fixed Faction Reward for Winds of Karana sheet 1
  • Rueppy Kutpruse Added Faction Check for stout Quest
  • Sir Morgan Add missing dialogue and message for turning in the wrong amount of gold/item
  • Squire Wimbley Add dialogue
  • Sir Morgan Fixed Reward, was giving out Sonic Wolf Claw Earring instead of Drom's Champagne
  • Uner Gnarltrunk Deputy Tagil's Debt Quest - Added Faction Check and Fixed Faction Reward
  • Beek Guinders Adjusted Faction and coin Reward for Cleric Supplies Quest
  • Toelia Snuckery The Torn Pouch Chomper Quest added Faction Checks and Fixed Faction Reward
  • Silna Songsmith Fixed Mail Quest text to indicate the correct person to deliver to.
  • Felisity Starbright Fixed Faction Reward for Mail Quest Fixed Message for Mail Quest
  • Deputy Eigon Added Hail Trigger Fixed excessive Cash Reward
  • Marshal Anrey Added Faction check for Leatherfood Raider Quest
  • Xelha Nevagon: Added missing faction based text/corrected reward text and added rewards. Increased faction requirement for cyclops eye to kindly. Improved xp and coin reward.
  • Gren Frikniller: Fixed Faction Reward for Broken Heirloom turnin
  • Sir Lucan D-Lere - Add correct turn in message for traitor quest, fix faction rewards for traitor and messenger intercept quest and add money rewards

11-28-2018

Code: Torven

  • Beneficial aggro from the result of spells not castable by the class of the user (i.e. procs, clickables) is now capped at 400 hate.
  • Bard songs were previously adding hate twice and this was corrected.
  • NPC AI will now refuse to attempt to cast a Complete Heal if a previous attempt at casting this spell is less than 8 seconds ago.

Haynar

  • Fixed an issue around zone line areas, where you cannot cast spells on your target. This fixes issue around VT zonein.
  • Made pathing changes, to help fix issues with mobs falling, like guards around Arch Lich in ssra.
  • Sacrifice now uses the same exp loss equations as death.
  • Added some webhooks changes.
  • Added some packet reduction for animations sent to clients, which get quite spammy in raid situations.

Database: Torven

  • maiden & umbral: NPCs now regenerate a small amount of HP in combat like most NPCs.

Robregen

  • Tradeskill: correct the Shaded Hide Recipe to use ME version of Shaded Hide Amice instead of VT.
  • Correct the heading on zone in from Twilight to Fungus Grove.

Script: Torven

  • grimling: The final war event was significantly modified for accuracy.
  • grimling: The Husman raid event was significantly modified for accuracy.

Robregen

  • Added a missing dialog and faction for Marv Orilis in East Freeport.

11-14-2018

Code: Torven

  • Lull spells landing on immune NPCs and NPCs too high for the spell now display a 'not affected' message.
  • Spell channeling has been reworked for PCs and NPCs.
  • NPCs will no longer have casts interrupted from being pushed. (stuns will of course still work)
  • NPCs are now considerably harder to interrupt with melee.
  • NPCs will try to gate less aggressively when low health.
  • NPCs will now wait until 5 seconds have passed from the start of a gate attempt before attempting another gate if interrupted.
  • Pet bashes now use PC interrupt rolls.
  • PC bash interrupt chance on level 66+ NPCs now caps at 2%.
  • PC bash interrupt chance on blue cons increased. (this was already 100% on NPCs below level 50)
  • Lifeburn no longer feigns the caster.

Haynar

  • When players/npcs are charmed, only their dot spells will be removed from other npcs to prevent faction wars. Debuffs will now be left alone, if they do not have a damage component.
  • Made some changes to charm logic, to allow NPCs to have multiple charm pets.
  • Added pathing improvements.

Database: Torven

  • velketor: NPCs no longer loiter.
  • velketor: Castle NPCs are now on Velketor faction.
  • permafrost: Lady Vox given a more custom spell set and reduced mana pool.
  • Root spells removed from the default NPC Cleric spell set.
  • Added lull immunity to a handful of NPCs.

Robregen

  • Jaggedpine Forest: Elishia Blackguard is now a female.
  • Jaggedpine Forest: Vaurien Sticklebush is now a female.
  • Tradeskill: added missing containers for Leather Padding.
  • Tradeskill: removed racial containers for Leather Padding.

Script: Robregen

  • East Freeport: Savarixsa Zexus now gives note of recommendation
  • Dawnshroud Peak: fixed a minor dialog error for Ryann Desgrey.

Misc: Haynar

  • Fixed some pathing areas in sseru and katta.


10-31-2018

Code: Torven

  • The internal list of pre-generated pet names was replaced with an algorithm based on Rygar's research which can be found here: https://www.project1999.com/forums/showpost.php?p=2661968&postcount=12
  • Summoned pets now leave corpses. NPC pet corpses are lootable and will last as long as any other NPC. PC pets are unlootable and poof in 3 seconds so they death animate.
  • Feign Death now breaks charm before feigning instead of after.
  • Mez now breaks living shield.
  • Z offset for permarooted NPCs is no longer capped.
  • NPCs casting zero cast time spells will now produce 'begins to cast a spell' messages.
  • 'Dumbfire' pets will now cast Unsummon Self before disappearing.
  • The merchant pricing algorithm is now precise for non-greedy merchants.

Database Torven

  • Quick Summoning AA fixed.
  • Emissary of Thule pets no longer stun.

Robregen

  • Faction: removed the extra faction hits from Goblins of Fire Peaks faction
  • fixed various Luclin Dungeon to no longer bind in.

Scripts: Robregen

  • Burrower Beast: fixed a boolean flag that was preventing the events from restarting after a failed event.
  • Burrower Beast: Added a 10 minute cooldown before the event can become active again to allow for CR.

Code: Torven

  • Rain spells now properly resist 20% of the time.
  • Charms now break /shield.
  • Area Taunt's height cap has been increased, which should allow it to hit everything.
  • Area Taunt no longer produces 'interfere' dialog from NPCs.
  • Pet stat modifications from focus items are now more accurate.

solar

  • instrument mod tweak
  • bolt spell tweaks - the model for the projectile still isn't correct but it's visible and shows the trajectory
  • bolt spell tweaks - when casting a bolt without a target it will fail instead of shooting the caster. more work needed to make it shoot straight forward.
  • effective casting level focus changed to only reduce fizzles instead of scaling spells as if cast by a higher level
  • prevent dueling players from buffing and being buffed by players other than their duel opponent
  • don't apply singing modifier to Amplification bard song
  • preserve items in inventory cursor queue when swapping contents of cursor and world object container slot

Haynar

  • Fixed some pathing issues in water. This should improve pathing in kedge and ssra water tubes.

Database: Torven

  • A few Luclin bosses have had their Rampage max range altered.
  • Some pet statistics have been modified. This is an ongoing process.
  • katta: Lcea Katta now respawns shortly after Wednesday resets.

Robregen

  • qeynos catacomb: add missing loots to large pirandha

Misc: Haynar

  • Improved some pathing areas in SSRA Temple

10/17/2018

Code: Torven

  • Pet focus item effects have been further modified.
  • NPCs wielding bane weapons will now hit targets that are vulnerable to the weapons.
  • Charm will now fade when casting feign death.
  • Finishing Blow no longer triggers on non-fleeing targets.
  • Finishing Blow was hitting NPCs one level higher than it should have and this was corrected.
  • The to-hit bonus while under warrior berserker frenzy and the penalty from drunkeness were not being applied and this was fixed.
  • NPCs with Divine Aura spells on them are no longer prevented from attacking or moving.
  • Spell Ancient: Lifebane no longer heals the caster.

solar

  • Made Pacify spell gain spell haste benefit from focus effects like the one on Ring of the Shissar, despite the duration limit that should exclude it. This agrees with the client calculation.
  • Group buffs cast with MGB will receive spell haste focus benefit

Haynar

  • Added chat channel improvements to help with disconnects.
  • Added pathing improvements.

Database: Torven

  • hole: Nortlav the Scalekeeper now corpse camps.
  • hole: Ratmen see invis chance reduced significantly.
  • vexthal: Trap mobs no longer corpse camp indefinitely.
  • Spell Dyzil's Deafening Decoy now has some functionality.
  • Pet statistics have been modified for accuracy. Min/max hits and attack delays are now precise for virtually all pets. Max hp and AC values are also more accurate. Not all pets were altered to the same degree. Most of the changes were beneficial, but not very noticeable except for some lower tier pets.

Robregen

  • sseru: Players can no longer be coth in the ARX Building.
  • faction: Adjust Dreadguard Outter to be more like live.
  • faction: Adjust Dreadguard Inner to be more like live.
  • faction: Adjust Dark Bargainers to be more like live.
  • Half Elf Bert and Inny Warrior can now be created at character select screen.

Script: Robregen

  • Dawnshrouds Peak: Rockhoppers should now be the default spawns at server reset.

Misc: Haynar

  • improved pathing in Katta, Maiden, Seru, and Tenebrous.

10/3/2018

Code: Torven

  • Rain spells now properly resist 20% of the time.
  • Charms now break /shield.
  • Area Taunt's height cap has been increased, which should allow it to hit everything.
  • Area Taunt no longer produces 'interfere' dialog from NPCs.
  • Pet stat modifications from focus items are now more accurate.

solar

  • instrument mod tweak
  • bolt spell tweaks - the model for the projectile still isn't correct but it's visible and shows the trajectory
  • bolt spell tweaks - when casting a bolt without a target it will fail instead of shooting the caster. more work needed to make it shoot straight forward.
  • effective casting level focus changed to only reduce fizzles instead of scaling spells as if cast by a higher level
  • prevent dueling players from buffing and being buffed by players other than their duel opponent
  • don't apply singing modifier to Amplification bard song
  • preserve items in inventory cursor queue when swapping contents of cursor and world object container slot

Haynar

  • Fixed some pathing issues in water. This should improve pathing in kedge and ssra water tubes.

Database: Torven

  • A few Luclin bosses have had their Rampage max range altered.
  • Some pet statistics have been modified. This is an ongoing process.
  • katta: Lcea Katta now respawns shortly after Wednesday resets.

Robregen

  • qeynos catacomb: add missing loots to large pirandha

Misc: Haynar

  • Improved some pathing areas in SSRA Temple

9-19-2018

Hotfix:

Code: Torven

  • fix for my dumb GetTop() mistake

Code: Torven

  • Warrior /shield implemented.
  • Pet melee hate was reduced.
  • Summoned pets get hate bonuses again.
  • Pet non-damaging detrimental spell component (e.g. stuns) hate was increased.
  • Pet hate will again (reversing the change from last patch) prevent NPC summoning if pet hate > ranged attacker hate even when PCs are in melee range.
  • Wizard spell Icestrike will now resist as other rain spells do.
  • Wizard and Cleric 'dumbfire' pets no longer bash or kick.
  • DA (invulnerability) spells no longer modify the hate lists of NPCs that hate the invulnerable player.

solar

  • change Afflicition Efficiency to work on all detrimental buffs, ignoring the effect 0 restriction limit in the focus
  • Bard fix: bard instrument mod fixes including puretone
  • Bard fix: changed the way bard spell pulses are applied
  • Bard fix: suppress did not take hold messages for bard group buffs that hit a player full on buffs

Database: Torven

  • ssratemple: Drop rate for Spell: Garrison's Superior Sunder has been increased.
  • ssratemple: Emperor Ssraeshza's respawn timer now resets on scheduled server reboots.
  • tenebrous: Heratius Grolden and Valdanov Zevfeer no longer summon.

Robregen

  • Katta: Centurion guards should now equipped their weapons.
  • Vex Thal: Correct the zone in location.

Misc: Haynar

  • Updated water tube pathing in ssra temple. Mobs will now path through the tubes when moving between floors. Fixed some pathing issues around ramps in tube rooms.

9-5-2018

Code: Torven

  • Fixed an issue with the hate list where pet hate was preventing NPCs from summoning out-of-melee-range haters who had a hate amount under the pet's hate amount while at least one other player was inside melee range.
  • 2h bash AA now functions.
  • Spell criticals now multiply the damage before the focus damage is added. (result is smaller criticals)
  • Focus effects will now only focus spells that are castable by the class of the player.
  • Spell hate focus is now random 1-X%. (Furious Bash focii)
  • Area Taunt now puts taunter 100 points of hate above the previous top hater.
  • Area Taunt range is now 18 units for all users. (this is roughly Ogre melee range)
  • Area Taunt now displays skill messages indicating the NPCs hit to the user.
  • Pets will now taunt undead targets.
  • Soul Abrasion AA now affects Mental Corruption.
  • NPC melee hate reduced slightly.

solar

  • Paragon of Spirit MGB/TGB is now possible.
  • Hybrid class innate spell was applying to some beneficial spells when it shouldn't have been
  • apply spell pushup and pushback on bard pulses
  • fix buff duration client desync when refreshing an existing buff on a bard player

Database: Torven

  • Quick Damage AA now works on spells with a cast time of 4+ seconds. Previously it was incorrectly affecting spells of 3+ seconds.
  • akheva: The Insanity Crawler respawn time is now 2 days +/-6 hours.
  • ssratemple: Emperor Ssraeshza now drops Spell: Garrison's Superior Sunder.

Robregen

  • Smithing: added missing recipe for bucklers.
  • Smithing: added missing recipe for Tarnished weapons to ore.
  • Acrylia Cavern: wormbait minnow should no longer path into land.

Script: Robregen

  • Beastlord Epic: Gold and Silver copper medal of war can now be used for the turn in.
  • Felocity Earring: Final turn in are now MQable.

8/22/2018

hotfix: Code: Haynar

  • crash fix

Code: Code: Torven:

  • Fear spell resist chance is no longer modified by the charisma statistic.
  • The extra rounds from Flurry and Rampage no longer quad if the NPC is not dual wielding.
  • Archery exploit check now only applies to NPCs with an ignore distance >= 350.

solar:

  • instant clickies will once again not have a casting message when they begin casting
  • MGB buffs will not hit pets anymore, only players
  • MGB will no longer function on item clickies or auto cast recourse spells

Haynar:

  • Changed some of the LoS methods for transitioning between node and non-node areas.
  • Fixed and issue with quiver haste that resulted in increasing bow proc rates excessively.

Database: Torven:

  • fungusgrove: several common NPCs have had their statistics altered.
  • akheva: The Insanity Crawler has been tuned.
  • akheva: a rubble rouser spawn time reduced to 4 minutes.
  • akheva: several common NPCs have had their statistics altered.
  • akheva: Shopkeeper Shei's stats adjusted downward.
  • akheva: Respawn time on NPCs in Shei's room increased significantly.
  • ssratemple: High Priest guard respawn timers are now much more accurate.
  • ssratemple: Spell: Remove Greater Curse drop chance increased.
  • shadeweaver: The swirling shadows farm region implemented.
  • lakeofillomen: Sarnak courier spawns are now much more like AK/Live.

Robregen

  • The Grey: Xakra Sei and a Xakra Shah are now flagged as animals.
  • Jaggedpine Forest: Yranik Blackguard and Vaurien Sticklebush should now aggro within range.

Quest: Torven:

  • Xin mobs will now be spawnable when dying to Shei Vinitras' vendor form.
  • Shei Vinitras Tatrua guards now respawn every five minutes or so if killed.
  • Shei Vinitras cumulative unaggro depop timer is now 15 minutes.

Misc: Haynar

  • Maiden's Eye: Path around AR should improved.

8/8/2018 Code: solar

  • zone crash fix - bard AE song could affect connecting clients that didn't load yet, we ignore these now until they're fully in world
  • Made AA titles visible to other players.
  • Resummon wizard familiar pet if you have the buff when entering zone
  • Change Balance of Zebuxoruk debuff to subtract 75% from heals instead of adding 25%
  • NPCs killed by Disintegrate spells should respawn normally now
  • load invis status from buffs earlier so invis players spawn as invis when entering zone
  • when force eating food from an inventory slot, check that the item about to be eaten is actually food before deleting it. this should prevent accidentally eating backpacks when trying to eat foraged vegetables.
  • break invis properly when casting an AA ability and adjust how instant spells are cast so that innate camo works the way it should
  • removed the chance of regaining concentration for players without the channeling skill (pure melee classes)
  • disable critical heals on percental heal spells (Tunare's Request, Kragg's Mending, Karana's Renewal)
  • fixed reverse damage shield effect not applying
  • change Veil of Elements to be a fixed duration invis spell
  • tweak casting and wear off messages for melee disciplines
  • prevent Stoicism, Torpor from stacking with movement speed increasing bard songs to avoid client buff desync
  • enforce zone location type 2 (dungeon) restriction in spells. the list of dungeons is probably incomplete and needs some research. acrylia, akheva, befallen, blackburrow, cazicthule, charasis, chardok, citymist, codecay, crushbone, crystal, dalnir, droga, frozenshadow, fungusgrove, griegsend, gukbottom, guktop, hateplane, hole, kaesora, karnor, kedge, kurn, mistmoore, najena, necropolis, nurga, paw, permafrost, potorment, powater, runnyeye, sebilis, sirens, sleeper, soldunga, soldungb, ssratemple, templeveeshan, thedeep, thurgadinb, unrest, veeshan, veksar, velketor, vexthal, warrens

Haynar

  • Improved pathing from open spaces to area with path nodes.
  • NPCs which summon players, will no longer use their z location as the player destination. Players will be summoned to the ground at NPCs location.
  • Charm on players should work again.

Torven

  • Experience gained from kills of NPCs near your level was increased significantly for players level 51+.
  • Charmed pets now have a melee range hate bonus again.
  • Archery will no longer function on an NPC target while standing outside of its ignore range.

Database: Robregen

  • Umbral Plains: Gantru Draklnr should now drop a bracer everytime.
  • Umbral Plains: Gantru Draklnr should now roam instead of being static.
  • SSRATemple: a warrior type "a Shissar acolyte" should no longer cast wizard spells.
  • Items: Porous Mineral Block is made to not be stackable.
  • Sanctus Seru: warrior type "A Signiferi of the Hand" should no longer cast spells.
  • The Deep: Corpse summoning should now work at zone lines (Echo and ssratemple)
  • Shadeweaver Thickets: Loda'Kai Soldiers at the building should no longer spawn under the building.
  • SsraTemple: Taskmaster Keuzozh should now be slowable.
  • Grieg's End: Grieg Veneficus should now drop Glowing Orb of Luclinite.
  • The Grey: Boulder should no longer summon
  • Grien's End: Adjust spawntimer for Praetorian Myral
  • ssratemple: Increase the spawn chance for Ssraeshzian Insignia Names.
  • ssratemple: Increase the spawn chance for the Commanders.
  • Umbral: Added missing raldukan armor loots to a gantru raldukan

Torven

  • Minor changes to various common Luclin NPC stats. (dmg adjusted, enrage added/removed, etc)
  • NPC ignore range reduced slightly (~12%) from what AK's probable values were in The Deep and Fungus Grove to better simulate the loss of mobs on pulls.
  • Avatar removed from NPC spell sets.
  • ssratemple: Luclinite added to Xerkizh The Creator.
  • ssratemple: Vyzh`dra the Cursed no longer equips inventory.
  • ssratemple: Arch Lich no longer equips shields.
  • thedeep: elder thought horrors now see invis 100% of the time
  • thedeep: elder thought horror aggro radius increased from 75 to 100.
  • thedeep: elder thought horrors in THO's chamber now respawn in 1 hour.
  • sseru: Seru building NPCs will now assist, buff and heal each other.
  • fungusgrove: Fungusbeast NPC contact proc rate increased.
  • acrylia: Burrower husk drop rates fixed.
  • griegsend: A Vereor Tesserarius is now aggressive.
  • akheva: Missing contact proc added to Tavuel Tatrua.

Script: Torven

  • Fungus Grove caller quest NPCs no longer depop in combat and now corpse camp.
  • Fungus Grove caller quest nameds now depop 1 minute later than the common NPCs.
  • Fungus Grove caller quest named spawn chance reduced slightly.
  • Grimling Forest 'miner bug' script implemented. A limit of 30 is in place.

Robregen

  • Sanctus Seru: LIS should now have his hatelist wiped and fully healed when he leash back to his spawnpoint.
  • The Deep: Depop all the summoned burrowers properly and reset the cycle when Restless is killed.

Misc Haynar

  • Added pathing to caves and around entrance in Umbral Plains.
  • Added pathing in Maiden's Eye. Mobs should path into zone in/out areas better.
  • Improved pathing in Akheva Ruins. Mobs should path around corners and up/down steps better.
  • Improved pathing in Ssra Temple. Mobs should go up and down ramps and corners better.

7/28/2018

hotfix: Script: Torven

  • Fungus Grove caller script now limited to 1 caller per cave

7/27/2018

Code: Torven

  • fix for rampage AA

solar

  • remove buffs Yaulp V and Yaulp VI when sitting down or riding a horse

Haynar

  • webhook updates.

Database: Robregen

  • Maiden's Eye: Goranga should no longer aggro from traps.
  • Sanctus Seru: A Vigilum Centurio should no longer cast cleric spells
  • Sanctus Seru: A Vigilum Cohortis should no longer cast wizard spells but ranger spells.
  • The Grey: Xakra type mob should no longer hit for 500.
  • Echo Cavern: zoning into Fungus Grove should be fixed.
  • Grieg's End: summon corpse should now work.
  • Tenebrous Mountain: Emissary Oomgado should no longer be ultra rare.
  • Umbral Plains: Gantru Dralkenr respawn time has been adjusted.

Torven

  • The Deep: fune tuned NPC in the zone.

7 - 25 - 2018 Shadows of Luclin releases on The al' Kabor Project

HIGHLIGHT: Luclin contents is now live

hotfix: code: solar

  • stop riding horse when entering indoor zone

Code: Haynar

  • Sitting mana regen while on a horse will no longer apply while moving or with auto attack turned on.
  • Sitting HP regen on a horse will be negated while moving or attacking.
  • Added a check to prevent going linkdead when you finish camping.
  • Zone line regions will no longer block line of sight. Like around the entrance to VP in Skyfire.

solar

  • chat language fixes
  • exclude horses from area effect spells

Robregen

  • memory corruption fix in OP_ReqClientSpawn (secrets)

Database: Torven

  • Removed Fear and Invoke Fear spells from indoor/dungeon NPCs.

7-13-2018 (missed code patch on 7-11-2018)

Code: Haynar

  • Improved mob transition into water while pathing.
  • Added more glm lib optimizations of raycast code.
  • Fixed some pathing issues associated with pathing nodes and also while under water, such as in kedge.

solar

  • Chat channel queues (not related to UCS channels): messages to cross zone channels like raid/group/guild/tell will be saved and delivered to clients when they finish zoning. Players should not end up missing any chat messages due to zoning anymore.
  • Languages implemented for all the chat channels that support them (not related to UCS channels)

7-11-2018

Code: Haynar

  • Improved mob transition into water while pathing.
  • Added more glm lib optimizations of raycast code.
  • Fixed some pathing issues associated with pathing nodes and also while under water, such as in kedge.

solar

  • Chat channel queues (not related to UCS channels): messages to cross zone channels like raid/group/guild/tell will be saved and delivered to clients when they finish zoning. Players should not end up missing any chat messages due to zoning anymore.
  • Languages implemented for all the chat channels that support them (not related to UCS channels)

Database: Robregen

  • Shadeweaver: Added missing pathgrids to various Loda kai / skeletal brigade / thug
  • Shadeweaver: Added missing pathgrids to Loda kai poacher near brigade camp

Script: Robregen

  • Plane of Sky: fixed various sky armor scripts.

6-28-2018(hotfix)

hotfix: Code: Haynar

  • Fixed issue with mobs not following into water.

6-27-2018

Code: Haynar

  • Updated some UCS timings.
  • Added additional CPU optimizations.
  • Added a message for keys being added to the keyring.
  • More mob falling below world fixes.

Torven

  • Archery should no longer be riposted by Enraged NPCs.
  • The IMMUNE_RIPOSTE special ability looked like it was coded incorrectly, so I changed it.
  • Riposte code refactored a tiny bit.

solar

  • Theft of Thought can no longer fizzle when attempting to cast on a non-caster mob, it's interrupted prior to the fizzle check.
  • Mind Wrack, Wandering Mind and Scryer's Trespass act as mana-tap-over-time spells and can no longer be cast or procced on non-casters.
  • Fixed a bug that caused some queued tells to be lost while zoning

Database: Robregen

  • Added a missing recipe: Seafood Platter (was in the previous patch)

Script: Robregen

  • correct the spelling for the Greta_Terrilon.lua questsay.

6-15-2018 (hotfix)

Code: Haynar

  • Added a quick fix for Riposte Disc vs Enraged mob, to prevent crashing.
  • Changed some of the fixes for falling below world.
  • Added back keep alive packets for UCS. Since it was more stable before.
  • Fixed an issue with how mobs calculate fear points when feared or fleeing, to prevent falling below world as often.

Database: Torven

  • Cleric and Wizard pets no longer flagged to tank.

6-13-2018


Code: Torven

  • Pets no longer get a hate bonus. This means pets will not hold aggro as well-- particularly at the lower levels. At higher levels this will be less noticeable.
  • Engaged NPCs flagged with the Proximity Aggro special ability will now only add new (faction appropriate) melee range entities to their hate lists if they are closer in range than the current target.
  • The 'first in range' +35 hate bonus now functions differently for Proximity Aggro NPCs. It is now applied to the closest entity instead of the first entity in the list.

Haynar

  • Using /camp desktop will remove world authentication, so it will more reliable shut down the client.
  • Mobs will now correct their z location better when they get in combat range. This helps correct mobs that have fallen below the world.
  • Removed a keepalive function that was send in chatserver stream, as the client completely ignored it.
  • Improved behavior when a mob is chasing a client or npc over water transitions. This helps prevent mobs from falling below the world.

Robregen

  • Bard instrument mods identified in OP_Buff. (Secrets)

Database: Torven

  • Various NPCs throughout the world now have 'proximity aggro' AI enabled, which is the classic undead-aggro behavior. This includes mostly 'dumb' NPCs such as animals, golems, yeti, blobs.
  • Aggro radii has been adjusted in several old world zones.
  • Many low level undead (and a few non-undead) NPCs have been flagged to aggro high level players.
  • kael: Idol of Rallos Zek granted a large assist radius.
  • dalnir: The Kly Overseer proc rate increased significantly.
  • beholder: Added several missing spells to various NPC spell sets.
  • beholder: NPCs added to zone: Brahhm (rare Mino NPC), Qlei (rare clay golem NPC), a goblin veteran.
  • beholder: Aggro radii reduced significantly for most NPCs.
  • beholder: Spawn rate for the zone is now 6 minutes zone-wide.
  • beholder: The number of spawns that King Xorbb may spawn from has been reduced.
  • beholder: Base King Xorbb faction is now KoS.

Robregen

  • Shadeweaver: Newbie area near PoK book has been redone
  • Shadeweaver: Xakras and Beetles in Newbie area will respawn at the appropiate time.
  • Shadeweaver: Tegi type mobs should no longer roam near the PoK book newbie area.
  • Najena: Ekeors should now drop the sash every time.

Script: Robregen

  • Coldain Shawl 8: Avatar of Below should now say the player's name instead of "Pirotess" in the text line.
  • Icewell Keep: Chamberlain Krystorf will now give the correct turn in text line in addition to the actual complete quest turn in text line.

Misc: Haynar

  • Updated pathing around entrance of Velktor's.

5-30-2018

Code: Haynar

  • Changed some chat channel settings to prevent chat channel lag, and reduce time out disconnections.
  • Fixed an issue that results in leaving the client in a sitting state using eye of zomm.

Torven

  • fix for NPC buffs on NoTarget NPCs
  • blind tick save throws

Database: Robregen

  • Dragon Necropolis: Adjust aggro range to Jaled'Dar Shade to 600.
  • Dragon Necropolis: Jaled'Dar should now aggro on Illusions.

Torven

  • Various changes were made to the default NPC spell sets. Expect spell cast AI to be different.
  • See-sneak added to various NPCs throughout the old world.
  • unrest: Fine steel weapons removed from drop tables for NPCs that should not have dropped them.

Script: Robregen

  • Shadeweaver: Added missing factions hit for the Ghulam Armors quests.
  • Shadeweaver: Added missing turn in quest text for "Rotting Jawbones" and "Thick Jawbones" quests.

5-16-2018

Code: Haynar

  • Feign death will now only give a fallen to the ground message on roll failures.
  • Feign death will fail 100% if attack is on. This also includes monks now. It only failed with attack on, for spell based FD before these changes.
  • When a gate collapses, pets will no longer be dismissed or charm broken.
  • When left behind on a succor spell, pets will no longer be dismissed.
  • Moved where pet is removed for succor. This should prevent charm from breaking before leaving the zone.
  • Changed how charm and fear work on the client. This will prevent the client from being stuck in a locked up state.
  • When a eye of zomm spell is cast, the client will no longer freeze immediately. The client movement will now be frozen when the perspective switches to the eye.
  • Fixed an issue when a player was charmed, that caused them to move at warp speed when not aggro. They will now move to their master as normal speeds.
  • Fixed an issue when a player goes LD while zoning, that helps prevent groups/raids from getting bugged.

Database: Robregen

  • Velketor: Traps in Upper Dogs should now cast an AE dispell.
  • Butcherblock: redid pathing route for Orc Runner.
  • Chardok and Dragon Necropolis: replaced charm traps with dispell since it out of era.

5-2-2018

Code: Torven

  • The SK Terror line of spells were doing twice the hate they should have been doing and this was corrected.
  • Disease counter hate was removed, and poison counter hate is now equal to that of the standard hate done by most non-damage detrimental spells. (which is a significant increase)
  • Enchanter Tash spells will now generally do more hate but sometimes less hate depending on the target.

Robregen

  • Dying at level 60 will now give a 16% xp loss

Haynar

  • Changed how NPC pet positions are updated while following their owner. This is an improvement to cpu and data rate usage. This also prevents a constant update of a pet position being sent out all the time while following.

Database: Robregen

  • Great Divide: Coldain Ring 10: High Priest of Zek and Priest of Zek should now hold the hammer instead of the staff.
  • Item: fixed the name typo for Ranger's Omelet
  • Qeynos: Trumpy Irontoe should now drop the head 100% of the time.

4-22-2018 Hotfix (no server reboot required)

Script: Robregen

  • Fixed an issue with Tunare respawning back in her tree.

4-18-2018

Code: Haynar

  • Added some checks to help pets recover from falling below world.
  • Step 1 of converting raycast mesh to use glm library.

Database: Torven

  • Aggro radii adjusted for NPCs in the following zones: kedge, steamfont, butcherblock
  • Bonds of Force and Atol's Spectral Shackles added to NPC wizard spell set.
  • steamfont: The higher level skeleton model NPCs have been removed from the lowest level regions in the zone.
  • steamfont: Added some missing emotes to NPCs.
  • steamfont: 'a young ebon drake' added to the zone.

Robregen

  • Tradeskill: Removed Velium Weapon conversion weapons.
  • Items: Removed Orb of Discordant Energy items and Torgiran Shackle Key

Co Founder and Lead Content D

4-4-2018

Code: Haynar

  • Fixed issues that caused zoning to the safe points by mistake.
  • Added another fix for mobs being stuck below the world in roamboxes.
  • Added compiler options to improve code performance.

Torven

  • NPCs were previously not casting spells set to use the snare AI logic if they were in melee range of their target and they now do so.
  • NPC casters now more likely to cast different nuke spells in their spell lists.
  • NPCs will now equip non-weapon off-hands (e.g. instruments, glowing black stone, stat books)
  • Root tick saving throws on low MR targets are now less likely to succeed.
  • Roots will now break more easily when casting direct damage spells against rooted targets that are not around the same level as the caster.

Database: Torven

  • Aggro radii adjusted (mostly reduced, but some raised) for NPCs in the following zones: innothule, guktop, feerrot, sro, oasis, nro, commons, ecommons, befallen, nektulos, kithicor, highpass, cauldron, tox
  • templeveeshan: Assist radii of raid boss NPCs reduced.
  • innothule: Added faction warring to some NPCs.
  • innothule: Lynuga respawn time reduced significantly from last patch, but still much higher than what it was before last patch.
  • innothule: Sir Edwin Motte removed from zone.
  • feerrott: a_skeleton added to the zone.
  • feerrott & innothule: Respawn timers adjusted for some spawns.
  • feerrott & innothule: Missing NPC emotes added to several NPCs.
  • kithicor: added faction war with bixies and goblins.

Robregen

  • NPC Enchanter Spellset: remove rapture spell.
  • NPC Ranger Spellset: remove swarm of pain.
  • Veeshan's Peak: removed level requirement since AK had none.

Script Torven

  • necropolis: Jaled Dar`s Shade depop timer removed.
  • innothule: The Ivandyr's Hoop reward made less common.
  • freporte: Added more dialogue to tavern NPCs and scripted the bar fights.

Robregen

  • fearplane: Golem's death should no longer spawn a doug with a 70's wig model.

3-21-2018

Code: Torven

  • Fixed an old bug that was making initial charm casts resist slightly more than they should.
  • Charm will now hold longer (on average) on targets with higher MR. Average charm duration at lowest MR remains the same.
  • The extra resist bonus on charm targets that are higher level than the caster no longer applies to NPC casters.
  • NPC AI altered to allow charming/mezing NPCs to cast those spells more often.

Haynar

  • Added combat range fixes.
  • Client triggered gate collapses should no longer send you to the safe coordinates of the current zone.
  • Changed handling for "clients left behind" from Succor type spells. This makes being left behind work properly and prevents unsolicited zone requests. Adjusted rate at which clients are left behind, based on data within the client.
  • Worn damage shield bonuses should now apply. This will fix the DS on Talisman of Vah Kerrath.
  • Added fixes to prevent mobs from falling below world.

Database: Robregen

  • Greater Faydark: a decaying skeleton decided to invade the land.
  • Innothule Swamp: Lynuga should now be more rarer.
  • Temple of Veeshan: hatchlings should now only respawn 20 minutes instead of 6 minutes.
  • Lake of Ill Omen: include two more spawns to 6 minutes duration that spawns tainted baracuda.

Torven

  • Spell Ancient: Chaotic Visions was added to the ancient spells drop table. (was put in last patch)

Script: Robregen

  • Rodrick Tardok: Should no longer despawn mid combat.
  • IKSAR cudgel quest: Fixed various text errors associate with pc name.
  • Kardokor: Changed the faction requirement to kindly for turn in.
  • Kellek Felhammer: Fixed text errors associate with pc race.
  • Anasia and Behroe: Fixed various errors with turn in and hail response.

3-11-2018

Allaclone: Robregen

  • items display should now show all instead of listing every races and classes.
  • changed charm slot to held slot since there's no charm slot existed in our era.

3-7-2018

Code: Torven

  • removed a pointless delay added to mob AI spell casts when mobs spawn, which was affecting script spawned NPCs

Database: Robregen

  • Veeshan Peak: Bridge should now work.
  • Tradeskill: Chronium Plate combine should now return the hammer on success
  • Kedge: a ferocious hammerhead should now be more rarer.
  • Kedge: a ferocious hammerhead placeholder should now always be a cauldron hammerhead
  • Fontier Mountain: Eboneye should now show the correct model.
  • Tradeskill: combine for newbie bard songweaver should no longer make the container disappeared.

Quests: Robregen

  • Kinlo Strongarm: faction requirement for turn in is now apprehensive
  • Marv Orilis: should now give the robe pattern instead of the tunic pattern.
  • Rolfic Gohar: should now give the boot mold instead of the bracer mold when requesting it.

2-22-2018 (hotfix)

Code: Haynar

  • Added fixes for mobs falling under world, due to union enforced, anti-flying dragon changes.

2-21-2018

Code: Haynar

  • Dragons can no longer fly.
  • Updated pathing in water, so there is less z warping.

Database: Robregen

  • Necropolis: traps should now only reactivate 20 minutes after going off.
  • Bard skill cap: offensive raise to 252. 1hb, 1hs and piercing raise to 250. Parry raise to 185.
  • Qeynos Catacomb: Commander Kane has been added.
  • Nekulos: added missing halfling fibula to various halflings in Nekulos.

Torven

  • Growthplane: Tunare should no longer equip weapons.

Script: Robregen

  • Rathe Mountain: corrupted hill giants should no longer despawn in mid combat.
  • Boats: fixed an issue that was causing boats to vanished mid way.
  • Weapons Delivery: Should now be able to complete the quest.
  • Reagents for Coriante Verisue: added xp and removed spell scroll for reward.
  • Note for Janam: fixed the turn in for both Janam Rekish and Harkin Duskfoot.
  • Unholy Silk Armors: Fixed punctuation errors.
  • Tholius Quey: fixed the starting note turn in.
  • Rigg Nostra: Fixed trigger phase for crate of pick head.
  • Rolfic Gohar: Should now accept the right note.
  • Rage Sorcerer Robe: replace tattered tunic pattern with tattered robe pattern in combine.

2-7-2018

Code: Haynar

  • Feign death will now only give fallen to the ground messages on roll failures.
  • Webhooks update

Torven

  • NPC spell range check on finished casts is now 1.2x normal spell range.
  • NPCs wielding bane weapons now have their damage calculated correctly.
  • Slam fixed for shamans and beastlords holdings a shield.
  • NPCs should no longer ghost and disappear momentarily when chasing players who have moved beyond ignore distance.
  • Fixed an issue where NPCs would not proximity aggro on new entities when they have previous entities on their hate lists who are all out of ignore range.
  • Corpse camping NPC special ability was broken in a previous commit and is now fixed.

Database: Robregen

  • Firiona Vie: an_ancient_Jarsath should no longer fall below world.
  • Scourge Warrior Broadsword is now the prevamp version.
  • Nektulos Forest: Added a missing "pristing ash drakling scale" loot to an ash drakling.
  • Fixed a combine for Dark Elf Rogue Ashen Bone Boot.
  • Fixed a combine for Scourge Sorcerer Gloves.
  • Toxuala Forest: increase the chance for Calcified Foot Bones to drop.

Torven

  • airplane: Keeper of Souls no longer sees invis.
  • growthplane: Drop rates for all drops are now uniform.

Scripts: Robregen

  • fixed various newbies scripts involving punctuation errors.
  • Blackburrow: Added a missing scripts for Scout_Malityn

1-25-2018 hotfix Code: Haynar

  • Webhook fixed.

1-24-2018

Database: Robregen

  • Timorous Deep: readjust spawntimer for Faydedar to match other outdoor dragons including boot spawn timer.
  • Toxualla Forest: Add a missing abandoned_heretic_pet that would wanders to Paineel to check on his pets before vanishing.

Robregen / Harakari

  • Shaped Ashwood Recurve Bow: correct the price to vendor based on Lucy.
  • Shaped Ashwood Recurve Bow: planing tools will no longer return on success based on waybackmachine EQTrader

Scripts: Robregen

  • Tunare: rewrote scripts into encounter to be more reliable if zone crash for whatever reason.
  • fix various classic scripts that had grammar errors.

HAYNAR CANNOT CONFORM TO STANDARD Fixed an issue which could result in one or more characters zoning slower, when simultaneously zoning multiple characters.Discord Added a feed of in game /alliance chat to discord #Alliance channel. This is a one way feed. Permissions to talk in the channel in discord are blocked. It is a read only feed.

1-10-2018

Database: Robregen

  • Qeynos Catacomb: no longer an outdoor zone
  • Various PoK book and stone had been adjusted to correct destination location and headings.
  • Firiona Vie: Mobs will no longer fall below world in certain areas.
  • GM Trophies trivials is now 335.
  • Necropolis: death beetles should now emotes.
  • Erud's Crossing: Seahorse scales no longer drops off of Seahorses.

Script: Robregen

  • Eye of Stormhammer: fixed Bronin Higginsbot text to direct to Bank Clerk instead of assistant.

12-27-2017

Code: Torven

  • Holyforge crippling blow chance fixed.
  • Holyforge/slay undead damage calculation modified, but not yet precise.
  • Holyforge crits now only occur on undead targets.
  • Charmed NPCs again use item haste.
  • Strength buffs on pets were erroneously capped in a recent patch and this is now fixed.
  • 'beams a smile' text no longer sent when spell is not castable by the mob. This prevents the text from being sent on lifetap proc weapons such as the goldrenrod.
  • NPC held Magic weapons no longer disarmable.
  • Most disarmed NPCs will no longer talk when disarmed.
  • Disarm success rate formula redone. It now rolls against the target's offense skill. Success rate was also made more reasonable. Note that this formula (and the previous one it replaced) is not based on any data and is subject to change if any data becomes available.

Haynar

  • Adjusted camping timer slightly, to allow client enough time to finish camping so when the logout packets are received from the client, it will reduce the chances of being handled like a linkdead. Sometimes camping will result in LD, rather than going to character select. This will hopefully help some of those cases.
  • Fixed an issue with adding heal aggro to leashed mobs, which caused some unpredictable behavior.

Database: Robregen

  • Stonebrunt Titans are now immune to run speeds changes.
  • Trophy recipes are now trivial at 335.

Torven

  • necropolis: Jaled Dar`s Shade stats adjusted

Script Robregen

  • Anniversary 1,2, and 3 is now live.

Torven

  • necropolis: Jaled Dar`s Shade will now depop after being up for a day and zone shouts added.

12-15-2017 (hotfix)

Code: Haynar

  • Added fixes for mobs warping after losing aggro (FD Warp bug).

12-13-2017

Code: Torven

  • Base melee and archery critical hit chances are now more accurate.
  • Crippling blow stun chance is now 85%.
  • Fix for slam on non-warriors.

Database: Robregen

  • North Karana: The Silver Griffon should now be immune to runspeed changes

Torven

  • sebilis: myconid spore king spawn rate increased.
  • sebilis: myconid spore king assist radius increased.
  • Magician Kunark and PoP fire pets now cast the appropriate spells and do reduced melee damage.

12-8-2017 (hotfix)

Code: Cavedude

  • Fixed a crash in NPC::GetBaseDamage()

12-3-2017 (hotfix)

Code: Cavedude

  • ApplyDurationFocus crash fix.

11-29-2017

Code Cavedude

  • Lifetap messages are now filtered under spells.
  • Mem blur components of Mez spells will no longer always fail.

Haynar

  • Move mob position update optimizations.
  • Pets guarding on a slope, should bounce less.
  • Fixed an issue with pets guarding, that was causing excessive position updates to be sent.
  • Pets guarding, should only change heading, if the new heading to nearest mob changes by more than an integer.
  • Fixed a mob position update issue, where locations can get out of sync, causing ghosting of mob locations.
  • Fixed an issue that causes elevated CPU usage when a zone initially starts up.
  • Tuned mob movement speeds more. They were moving a little too fast.
  • Consolidated the AI_Think Timer and AI_Movement Timers as they were somewhat redundant in how they actually behaved.
  • Overloaded the Timer::Check function to make it more efficient, even though it only saves a few CPU cycles. It is the most called function.
  • Simplified position update counters for clients and npcs. This should prevent sending extra updates for the entire zone periodically.

Torven

  • The double attack and dual wield chance calculations are now precise.
  • Summoned pets now require level 17 to double attack.
  • Summoned pets now require level 19 to dual wield.
  • Summoned pet double attack and dual wield skills now capped at 200.
  • Summoned pet avoidance skills now capped at 100 for Classic and Kunark pets and 125 for PoP pets.
  • Beastlord pets granted the block skill, capped at 50 and parry skill removed. (overall avoidance will increase slightly due to block being such a better skill)
  • Triple attacks are now 10% chance on a successful double attack.
  • Non-pet NPCs are no longer affected by item haste.
  • Client procs are now handled before the weapon swing instead of after.
  • Clients no longer double attack in the off-hand if double attack skill is < 150.
  • Beastlord hand-to-hand damage and delay now use their own tables instead of using Monk tables. (Credit to Demonstar)
  • 'Your hands are now magic weapons' text added at level 30 for monks and beastlords.
  • Worn item effects now scale properly on summoned pets.
  • Archery rolling the crit multiplier twice is now fixed.
  • Fixed issue with special class attacks using mainhand offense/atk instead of skill offense.
  • Melee immunity logic changed to match our era.
  • Summoned pets now do the same minimum backstabs as other NPCs.
  • Innate dual wielding NPCs no longer equip 2h weapons.
  • NPCs should no longer desync their main-hand and off-hand attacks when the main-hand attack kills a target and both attack delays are the same.
  • Eagle Strike damage fixed.
  • Damage bonus removed from throwing attacks.
  • Cleric bash fixed.
  • Melee crit damage should now be precise. Cripples are extremely close but not quite 100%. Crits now properly do minimum damage.
  • Melee crit chance changed to more closely match old and modern EQ logs.

Database Robregen

  • oot: Seafury Cyclops should no longer fall below world.
  • Blank Rune recipe should no longer fails.
  • Added various missing Fine Steel weapon > HQ ore recipes.

Torven

  • templeveeshan: hatchlings now unmezable.
  • growthplane: immunities changed for many NPCs. More are immune to mez, less are immune to charm.

11-24-2017

Web Speedz

  • Code reorganization in all web tools except account management.
  • Added persistent table sorting in the guild manager with a reset button. You should now be able to sort then close browser and reopen to the sort you left it at.
  • Resizable columns in guild manager. These are also session persistent but can't be "reset".

I wouldn't normally make a change log specifically for web but some have requested these exact features. They would go relatively un-noticed if not mentioned. Also with the refactoring and additions of these fairly code intrusive features, bugs could present themselves. Keep an eye out and let me know in web bugs.

11-15-2017

Code Cavedude

  • Fixed the issue causing spells with an instant heal effect to not heal properly.
  • Fixed the issue causing /who all filters such as zone to ignore the guild filter and list everybody, regardless of guild status.
  • Resurrection Effects will no longer fail to land when the target player is in a no combat zone.
  • Adjusted the HP regen cap to match the client decompile. (Thanks to demonstar)
  • Harmony type spells will no longer break feign death when they are resisted.
  • Band aid fix for a crash we saw due to a dangling group leader pointer. The cause of the dangling pointer was not tracked down, but it will be cleared by this code if it ever happens again.
  • Removed Secondary Forte code as it is out of era.
  • Change to GetAA() to hopefully prevent future crashes. (Haynar)
  • Changed animation column to be signed, this allows us to know when the client is moving backwards. (Thanks mackal for the heads up!)
  • Focus code rewrite.
  • The correct item will now be chosen whenever a focus is used.
  • Moved the focus checks and messages to the appopriate parts of spell casting process.
  • Focus effects should now occur under the correct conditions.
  • Fixed the non-working focus effects (Reagent conservation for example was not working at all.)
  • Removed several unused focus effects and a few unused focus methods.

Torven

  • All PC class based special melee attacks (bash, kick, dragon punch etc) should now (theoretically) do precise damage; minus bash with a shield which still has some unknown logic to it but will still be more accurate.
  • Flying kick now has a minimum damage of level * 4 / 5.
  • Client special attacks now do hate equal to the base damage of the skill. This is a reduction.
  • NPC rogue backstabs now do precise minimum damage, but max damage is still an imprecise estimate.
  • NPC Harm Touch and Lay on Hands now have 40 minute reuse timers.
  • Melee weapon damage now properly applies elemental damage, including for backstab.
  • Throwing damage now applies the damage bonus and the ranged damage divisor.
  • Spells cast from items (including weapon procs) now do full hate if the spell is castable by the class of the item holder/wielder.
  • Enraging blow effects now do full hate for bards.
  • Avoidance skill order is now Block, Parry, Riposte, Dodge.
  • NPCs of the appropriate classes now gain riposte at level 12.
  • NPCs now again do two bash/kicks per special attack instead of one. (ramp, flurry)
  • The riposte and parry formulae have been modified slightly to reduce the overall parry and riposte rates. This amounts to a -1% for each at max skill.
  • Wizard innate critical spell chance is now (min(INT, 255) + min(DEX, 255)) / 2 + 32 / 100
  • Aggressive discipline now increases the 'DI' portion of damage taken by 50%, like a reverse Defensive disc.
  • Stonestance and Protective Spirit disciplines are now precise. Note that they were only supposed to apply to the 'DI' portion of NPC damage and they are now less effective.
  • Fix to Beastlord hand-to-hand hate generation.
  • Summoned pets are now subject to a haste cap. Summoned pet haste cap is: 10 + petLevel + max(0, ownerLevel - 39) + max(0, ownerLevel - 60)
  • Archery hate is again back to weapon damage + arrow damage per shot without the multipliers, hit or miss.

Haynar

  • Added mob movement improvements.
  • Fixed some issues that would prevent quest::move_to from causing mobs to move immediately.
  • Removed LoadServerSettings schema from login server code.
  • NPC movement speed updates.
  • Updated method for determining behind mob stun checks.

Robregen

  • NPC will no longer turn to face you when hailing if sitting or laying.

Database Torven

  • The magician epic pet's proc rate has been increased to 15%.
  • Kunark and PoP magician air pets are now warriors, as they were bashing in logs and not doing monk stuff.
  • Innate dual wield removed from shaman pets.

Robregen

  • Nolon Nurbyte should now slashed instead of punch.
  • Shak Dathor should drop the chunks of condensed shadow more frequently.

Script Robregen

  • The turn in for ranger/druid epic Telin Darkforest should now only requires amiably or better.

11-3-2017 (hotfix)

Code: Cavedude

  • Fixed the issue causing spells with an instant heal effect to not heal properly.
  • Resurrection Effects will no longer fail to land when the target player is in a no combat zone.

11-1-2017

Code: Cavedude

  • Removed numhits as the spell data and Lucy history suggests no spells in our era used it.
  • Removed some unused columns from out buff struct.
  • Added a IsGroupSpell() check to CheckSpellLevelRestriction() when a clicky is used.
  • Moved the combat zone check to the end of the spell casting phase.
  • Clickies will no longer check spell level restrictions.
  • AE spells with AEDuration set will now do a second range check at the end of the cast.
  • Pacify will now always land on NPCs assuming all other spell checks are met. If the NPC is immune, the buff will simply have no effect.
  • Applying spell effects and bonuses are now done after the second spell action packet is sent. The method was split into two, AssignBuffSlot() which is still done in the same spot, and SpellEffect() which was moved to the end of the SpellOnTarget() method.
  • Due to the above change, the Lua method SpellEffect() has been removed.
  • Removed several redudant bonus calculations done while a spell is cast.
  • Spells will now only check level restrictions at the beginning of the cast.
  • Fixed the issue causing the greed field of the trainer packet to be reversed. Training costs will now go down as your CHA goes up.
  • Removed the "Invalid spell proc" message that occured with weapons that have an invalid proc id.
  • Added eq.get_timer("name"); method to Lua which returns how much time in milliseconds the given timer has left. If the timer doesn't exist this will return 0.

Torven

  • Harm Touch now has precise damage scaling: 1 + level * 10, with an additional bonus of (level - 40) * 20 (max 400) after level 40. (this is an increase over previous scaling for SKs above level 50)
  • NPCs now use the same HT as PCs and do the same increased scaling damage.
  • Harm Touch was previously using the disease version for all HTs after level 40 and now properly uses MR for non-disc HT and disease for disc HT.
  • Unholy Aura discipline now always increases damage by 50%.
  • Wizard innate crit damage is now a random 1-50%, down from 20-70%.
  • Spells cast (not weapon procs yet, that's next patch) from items now do full hate if the spell is available to the class of the item holder.
  • Bash without a shield now does 6 hate, which is far less than before.
  • Bash hate with a shield is now equal to the shield's AC and is capped at 25.
  • NPCs granted the ability to stun players for 3 seconds when the player is facing away from the NPC and the player is running or walking. This chance is 10% on hit.
  • Shadowknight, Paladin and Ranger NPCs will now cast spells at a much reduced rate.
  • Cleric, Shaman and Druid NPCs will now cast spells at a slightly reduced rate.
  • NPCs will no longer cast AoE spells unless they have multiple targets to hit with it.

Database: Robregen

  • Brother Q and Z should now drop their items at the correct drop rate.

Torven

  • The magician epic pet's proc rate has been reduced down to the correct rate. (10%)
  • The warrior Aggressive discipline now lasts the full 30 ticks. It was previously only working for 10 ticks.
  • The warrior Aggressive discipline now increases damage done by 30%, down from 35%.
  • The warrior Aggressive discipline now increases damage taken by 30%, up from 15%.
  • Wizard innate crit rate is now 2%, down from 7%.
  • The Herald of Vulak`Aerr now has a precisely accurate min and max hit, which is significantly higher than previous.
  • The Herald of Vulak`Aerr's attack delay was increased.
  • hole: The common MR level in the zone is now 80 MR, up from 70.
  • hole: Rock golem MR reduced to 80, down from 100.

10-18-2017

Database: Robregen

  • Splitpaw: Various doors in Splitpaw can now only be open with a lever.
  • Lake of Ill Omen: Barracuda in lake of ill omen will now respawn at 40 seconds except for ph / tainted which will be 6 minutes.
  • Droga: Iksar Slaves should now repop every 12 minutes.
  • Najena: injured halfling in Najena will now assist Moosh.
  • North Karana: Zahal the Vile in North Karana should now roam the zone.
  • North Karana: Silver Griffin should now share the spawn with Zahal the Vile.
  • Field of Bone: Various NPC in Field of Bone near PoK book should now be more populated.
  • Skyshrine: added Large Brick of Velium to skyshrine mobs.
  • South Ro: added a nighttime spawn condition for AC
  • Swamp of No Hope: Escaped Froglok should no longer be as rare.
  • Eastern Wastes: Added Citizen Froststone Faction to RyGorr Orcs
  • Neriak Commons: Guard N'Mar should no longer see invisible.
  • Tailor Recipe for Tigeraptor and Cobalt Drake should now have a trivial of 252

Torven

  • hole: Ignore distance for all NPCs in zone reduced to 600 units.
  • hole: Resists increased for many NPCs. (this was based on data and is not arbitrary)
  • hole: Master Yael granted wizard spells.
  • hole: Elemental wizards and viziers granted missing innate procs.
  • sebilis: Minor resist adjustments on various NPCs.
  • sebilis: Tolapumj now unmezable and uncharmable.

Script: Robregen

  • Eastern Wastes: Kromriff Death Squad should no longer attack players that are dubious or better.
  • Lokar To'Biath: Should now be able to do Multi turn in for Bottle of Red Wine.
  • Added Qeynos Badge of Honor (Qeynos Badge #4) in Qeynos Catacomb.

Robregen / Mythsong

  • Added Researcher's Badge (Qeynos Badge #3) in North Qeynos.

9-20-2017

Code: Cavedude

  • Added the ability to disable the casting of specific spells in the database. Any spells disabled in this way will be interrupted as soon as they are cast, before all other checks. GM flag will allow the spell to be cast.
  • Changed the functionality of CanBeInZone() to also support checking a zone before the player enters it. This allows us to cancel the zoning process before it even happens, so the player won't move at all. Unfortunately, this will not work for teleport spells as the client initiates an unsolicited zone request when those spells are cast. However, it works very well for things like doors (PoK books/stones.)
  • Changed the default rule for NPC buff slots to be 30.
  • Corrected an issue that would cause a trader account to become stuck, if they lack the Luclin expansion on their account. (This is not an issue on TAK, due to our web account management system.)
  • Primary factions can now be given unique faction cap values. min_cap and max_cap were added to the faction_list database table to configure the caps.
  • Having a DoT going at any time while feigned will no longer result in faction hits after the NPC is successfully mem blurred. If a DoT hits the NPC after the blur lands faction hits will again occur.
  • NPCs will no longer remember feigned players after Mem Blur has successfully been cast on them. This combined with the above change should hopefully completely fix this issue.
  • Corrected the issue causing Brusco`s Bombastic Bellow to require a component.

Haynar

  • More netcode updates.

Database: Robregen

  • Iceclad: Lodizal should no longer see invisible.

Cavedude

  • Disabled the Cazic Thule port spells from being cast.

9-6-2017

Code: Haynar

  • More netcode updates.

Database: Robregen

  • West Commonlands: a lesser mummy should now be KOS
  • Various Zones: most dragons should now drop dragon meat.
  • South Karana: Lord Grimrot (Human) should now drop both version of Pestilence Scythe everytime
  • Crystal Cavern: Historian Baenek should now respawn in 2 hours.
  • Neriak Arena: Uglan, Capee, Karnan, Mrak, and Svunsa should now drops words and plats.
  • Neriak Arena: Uglan, Capee, Karnan, Mrak, and Svunsa should respawn every 400 seconds.
  • Newly created Wood Elves should now conned indifferent to Keepers of Art
  • Everfrost: goblin whelps should now roam the western part of the zone.
  • Plane of Mischief: Debbis the Fish should now assist other NPCs in the zone.
  • Felwithe: Tolon Nurbyte should now varies in level from 38 to 42.

Torven

  • templeveeshan: Dozekar tear drop rates made uniform.

Script: Robregen/Elroz

  • Qeynos Hills: Added missing hail for Tol Nicelot.
  • Qeynos Hills: Added new scripts for Gornolin.
  • Qeynos Hills: Added missing hail to Buzzlin Bornahm
  • Qeynos Hills: Added missing hail fo Sir Edwin Motte.

Robregen

  • Key to Veeshan Peak: quests related can now be Multi-Quest.

9-3-2017 (hotfix) Code: Haynar

  • Added Netcode Fix for 1017 errors.
  • Fixed an issue with quest::MoveTo.

9-1-2017 (netcode update)

Code: Haynar

  • Netcode update

8-28-2017 (Netcode Patch)

Code: Haynar

  • Updated netcode resend timers for triggering client to resend packets to server.
  • Reduced some of the ack required packets, associated with bard song spell effect packets and various animations.

8-27-2017

Code: Haynar

  • Fixed a crash in NPC::Attack.
  • More netcode improvements.

8-25-2017

Code: Haynar

  • Mez spells should only send position updates when mobs are moving. They were sending a position update every time the mez hits. This should make AE Mez spells friendlier on data sent to clients.
  • Netcode changes to packet handling for out of order and buffered packets.

8-23-2017

Code: Cavedude

  • Temporary pets will no longer use their owner's resists.
  • Dire Charm will now reset when cast on a mob that is immune to charm.
  • Updated several disciplines to use duration timers based on the 1/9/01 patch.
  • Gating in your bind zone with Eye of Zomm up will no longer send you to invalid coords.

Haynar

  • Fixed a potential issue that could cause the ReaderLoop to not start up correctly.
  • Changed how position updates are performed at a distance. This could help improve LDs while tracking. Or it could have the opposite effect, and make everyone LD more.

Database: Torven

  • Ring of Vulak: Quadding flurry drakes now have a larger aggro radius.

Script: Robregen

  • Mojax Hikspin in Commons should now accept multiple milks for turn in.
  • Adjust the xp turn in for Lightstone Concordance of Research

8-9-2017

Code: Cavedude

  • Added rule AlKabor:ClickyHateExploit to determine if Invisibility versus Animals clicky items should produce extra hate or not. Defaults to false.

Haynar

  • Fixed an issue with mobs distracted from their grid, which results in depopping early if on a GridOneWayDepop type grid.
  • Fixed an issue with quest moveto which caused mobs to not move right away.

Database: Robregen

  • Fixed Unfired Crucible of Escape recipe that should return a scupting tool if failed.
  • Fixed Misty Glazing to not fail and set skill trivial to 0.
  • increase resistance to 2000+ for dumbfire pets including wizards.
  • Master Yael and Vorshar the Despised are now on a boot reset spawntimer.

Script: Robregen

  • Idol should now only be up one at a time instead of multiples.
  • AoW should now despawn in 1 hour after spawning if not engaged.

Web: Speedz

  • AA Development progress tracker is online. See rules for access if you can't edit entries.

7-26-2017

Code: Cavedude

  • Added Immune to Riposte special ability.

Haynar

  • Made changes to how Z is calculated while moving, to help prevent mobs from falling below world.

Torven

  • nerf to insta-click spam aggro generation

Database: Robregen

  • Yeolarn Bronzeleaf in Felwithe should now attack if KOS.
  • NPC with druid set should now cast level appropiate skin buff.
  • Gems should now drops more frequently in Plane of Growth.
  • Akksstaff in Najena should have a shorter respawn timer.
  • there should be more scaled pup near the pok book in field of bone.
  • Cleric Dumbfire pets should now resist spells.

Script: Robregen

  • add a missing questsay for Emkel_Kabae
  • fixed a depop issue with snowfang fisher in iceclad.
  • add a timer to hail to prevent infinite spawn of giants for Coldain Ring 4.
  • correct text for Eonis_Mournunder

Speedz

  • Fixed item ID in a turnin for 2nd Groflah Steaddirt Pally Epic.
  • Added missing dialog and notes to item handing for Soulfire quest on Brother Hayle.

7-12-2017

Code: Cavedude

  • Corrected an issue causing bag weight to not be calculated correctly server side.
  • Cleaned up the server weight calculation a bit more. There are times we are still 1 off, but I've confirmed that is because the client will randomly skip over items below 0.5 weight. I have no idea why. The server side weight is correct, and it's never more than 1 off, so it's good enough.

Database Robregen

  • a slime elemental in Runnyeye should now drop "Orb of Slime"
  • slightly increase the drop rate for Charger Hoof Chips on Centaur Charger in South Karana

Cavedude

  • Dumbfire pets should no longer backstabs like a rogue.
  • Dumbfire pets should no longer be immune to AOE.

Script Robregen

  • fixed the name variable for Oracle_Vauris.lua
  • removed a class check for Astral_Projection.lua in Lake of Ill Omen.

6-29-2017 (Hotfix)

Code: Haynar

  • Fixed issues with loiter timers.

6-28-2017Code: Cavedude

  • Increased the Z coord check for portal pads, which was causing players to not be able to teleport properly.
  • Portal pads will no longer "open" or "close".
  • Minor changes to some Lua methods required by the last quest commit.
  • Removed the lua call depop_all() because it wouldn't do anything as written. Only depop_all(npcid) is being used in Lua scripts, which works fine.
  • Corrected how Defensive Discipline is calculated.
  • Air remaining will now be saved when camping/zoning.
  • Improved the accuracy of determining if a player is in water for swimming skillups when they are at the ocean floor.
  • A minor change to the AE target limit based on mackal's findings on Live. We were really close, so no change should be seen in the vast majority of situations.
  • Fixed an exploit in the reagent focus code.

Haynar

  • Fixed an issue with loiter timers not resetting when a guarding mob returns to their guard position.
  • Fixed an issue with loiter timers getting stuck in reset condition.
  • Fixed where a hate list can be cleared, but the no longer engaged event never fires.
  • Fear will no longer permanently freeze a client under certain conditions.
  • Fear will now be more reliable on clients that are levitated.

Database: Robregen

  • Readjusted some pricing on a few paineel steel armors.
  • Removed the recipe for Gem-studded Tower Shield as well as the item itself.

Scripts: Cavedude

  • Removed the code that cleared a NPC's quest inventory when handed an item they don't need. The item plugins will now only clear the inventory when a hand-in is completed.
  • Corrected an error in item_lib.check_turn_in that would cause items the NPC requires to be deleted when another quest was completed on the same hand-in. Depending on the logic in the NPC's script, the item will either be handed back (the NPC is using "if elseif" logic) or added to quest loot (NPC is using "if if" logic.)
  • Added new plugin item_lib.count_handed_item.
  • count_handed_item acts as a full replacement for check_turn_in. It should be used whenever a quest can be completed multiple times in a single hand-in. It will count up all the items specified in the plugin (up to 8 are supported) in the hand-in and quest loot and will return how many times the quest should complete.
  • NPCs that ask for Deathfist Slashed Belt can now complete their quest multiple times in one hand in.
  • Kunark spell turn-in quest NPCs can now complete their quest multiple times per hand-in.
  • PoK guildmasters who accept armor in exchange for gems can now complete their quest multiple times per hand-in.
  • Updated Sheriff_Roglio.lua to use count_handed_item for his runnyeye warbeads quest. Obviously since he requires 4 items this quest cannot be completed multiple times per hand-in. However, in this case using this plugin instead of check_turn_in is a bit cleaner, since you don't need to check each quest slot.
  • Added optional text parameter to item_lib.check_turn_in. The NPC will Say() this text for each item handed to them, except for the final item that completes the handin. Methods (GetCleanName()) can be passed to this text before it is sent to the plugin. However at present the text will be the same for each item handed to the NPC. If unique text per item is required, that will need to be added later.
  • Updated Phenic_Dionicas.lua and Cryssia_Stardreamer.lua as examples. Phenic_Dionicas.lua also had MQ enabled for his multi item handin, as the bug that required it to be disabled due to the previous faction check is now fixed.
  • Fixed an issue with Dalorio_Blistbobble.lua causing him to eat items he didn't need on the handin that completes his quest.

Torven

  • Ring of Vulak: Vulak will no longer poof on kill.
  • Ring of Vulak: 11-splitters now split 2x, 2x, 1x, 0x. This means that no more than 4 children can be spawned at once per parent.
  • Ring of Vulak: 2-splitter children now spawn at parent's origin.
  • Ring of Vulak: Acolytes of Veeshan may now spawn a black version.
  • Ring of Vulak: Acolytes of Veeshan stats adjusted.

Robregen

  • Moved Oracle_Vauris.lua to the appropiate folder.
  • fixed an error in depop for faydedar
  • removed the class check and reordered the turn in call for a_sleeping_ogre.lua

Co Founder and Lead Content Developer for TAKP. Retired Content Developer for PEQ. robregen,

6-14-2017

Code: Cavedude

  • Expired no rent items will no longer display on character select.
  • Player pets will now engage in combat in PVP areas of no combat zones.
  • Disciplines will no longer fail if your buff bar is full.

Haynar

  • Mobs distracted while at a waypoint pause, will now use the remaining time for loitering before continuing on to their next waypoint.
  • Improved Cancel Magic code.
  • Added functionality for Taper Enchantment spell.
  • Updated upper bounds for dispell spells to succeed.

Database: Robregen

  • The rest of Chardok loots is now available.
  • Vorshar the Despised decided to take up resident in Neriak.
  • Gullerback should now be more common.
  • Fixed various items typo due to missing apostrophe.

Script: Robregen

  • Spawned Statue of Rallos Zek should no longer despawn Idol and AoW.
  • 8th Shaman Cudgel should now be available.

5-31-2017

Code: Cavedude

  • PVP areas in no combat zones will now work.
  • Removed ReloadProxSayNPCs() as the bug that required this has been fixed.
  • Removed findable and trackable as they are not in our spawn struct and thus were unused.
  • Removed some unused variables from the playerprofile.
  • Removed some leftover code from the playerprofile conversion.
  • Corrected the time of day Dance of the Fireflies can be cast.
  • Alterations to the SPECATK_RANGED_ATK special ability parameters
  • Corrected an issue where ranged NPCs would do two attack animations for every one attack.
  • Roambox dist is now randomly generated. Removed the dist column from spawngroup as a result.
  • Final NPC cleanup (hopefully.) Removed some more unused columns and variables.
  • The npc_types loading query has been moved to a centralized method GrabNPCType(), so it isn't repeated in the const and temp methods.
  • Numerous fixes to spawngroups with a spawn limit set to make sure their spawnpoint timers are maintained, and to also produce better results when new spawnpoints are chosen to spawn.
  • Moved many respawn_timer query methods from zonedb.cpp to spawn2.cpp.
  • Adjusted the logging levels of the Spawn category so it is more useful.
  • Added how the NPC was spawned to #wpinfo and #npclist.

Haynar

  • Shrink and Grow under an illusion will now update z offset based on the illusion race.
  • Fixed archery double damage.
  • Player pets should remember who hit their master better. They were suffering from short term memory loss.
  • Rooted mobs that are fleeing will now face their target.
  • Fixed an issue with quest::start, causing NPCs to delay in moving when a grid is assigned.
  • Fixed an issue with loiter timer on static NPCs resetting every time aggro is lost. The loiter timer will now reset only when the NPC returns to their guard location.

Database: Robregen

  • Keldor Dek`Torek should now respawn between 18 - 30 hours.
  • Added a missing NPC "An Undead Annalkeeper" in Nektulos Forest.

5-24-2017 (hotfix)

Code: Cavedude

  • Fixed a crash in NPC::CheckMinMaxLevel().

Database: Robregen

  • correct the Slowstone amber recharge cost

Scripts: Robregen

  • fixed the monk epic with a book return when giving the book to a Fake/Angry Kaiaren to spawn a real Kaiaren.

5-20-2017 (hotfix)

Code Haynar

  • Improved projectile collisions with mobs.
  • Bolt fixes.
  • Updated textures on spell bolts. To make the flying bolt visible, you must use old spell effects by deleting the spellsnew.edd and spellsnew.eff files in your client install folder.
  • Moved NPC ranged attacks to use the new ranged attack system.
  • NPCs in PoM should now be able to have their ranged attacks hit other NPCs.
  • Adjusted origination and destination height of projectiles.
  • Added mob collisions of ranged/bolts for the final jump in the movement. Mobs real close to the destination were skipped in collision

5-17-2017

Code: Cavedude

  • Fixed corpses not displaying the correct armor appearance.
  • Changed many instances of printf to use Log() instead to prevent writing to file.
  • Potion families (regular, minor, greater) will now use clicklevel instead of the caster's level for the spell effect level.
  • Removed attuned code, which was already largely disabled anyway. Also… removed color methods from the ItemInst code, which was a remnant from armor dye.
  • Feigned before an NPC begins to flee will again clear damage credit.
  • Renamed RemoveDamageCredit() to RemoveFromDamageCredit() to be uniform with existing methods in this code block.
  • Added PERMAROOT_FLEE special ability to force a NPC to flee (turn and stop attacking) when permarooted. They will attack as normal when rooted by a spell.
  • Moved PERMAROOT_FLEE to DESTRUCTIBLE_OBJECT's position since that isn't used.
  • Selling an equipped item to a merchant will now properly update your appearance.
  • Added the ability to force a NPC to equip a loot drop item. This can be used if you need a NPC to prefer one item over another in a specific slot. It can also force a NPC to equip a bow or other ranged weapon instead of primary/secondary items. Once an item is forced into a slot, items added later will not override it.
  • Ranged items will now display properly in-game for NPCs.
  • Fixed an issue causing NPCs to not equip ammo items.
  • Made several changes to AddLootDrop() to reduce memory usage and make the code easier to read.
  • The method NPCs use to determine item material in AddLootDrop() for OP_WearChange is now matches the one used by all mobs in GetEquipmentMaterial().
  • Moved several NPC equipment methods from npc.cpp and mob.cpp to loottables.cpp.
  • Changed AddLootDrop() calls to be uniform with the database column's default values.
  • Removed several methods that were duplicates or no longer used in the NPC equipment code. (RemoveItem() being one of the primary ones.)
  • Rewrote three methods that delete NPC items to be safer, to send out OP_WearChange, and to properly clear the equipment variable for the given slot.
  • Fixed some odd behavior that occurred when a NPC has duplicate items and they have their pockets picked.
  • Hopefully improved the loading of Bazaar trader items.
  • Added rule AlKabor:LightBlueExpPenalty which controls how much of an experience penalty light blue conned mobs will have. This can be tweaked until it feels AKcurate if need be.
  • Removed the Client variable XPRate which was unused.
  • Removed support for evolving items, and several item columns we are not using in the database.
  • Added rules to change the exp percentage for each con except green.
  • Feign will no longer prevent exp gain while in a group.
  • Anybody in a group can now accept a raid invite on behalf of their group, assuming the whole group is in the same zone.
  • Merchants with merchantid 0 will no longer open a merchant window.
  • Updated the rules regarding bracer textures to match how the client handles them. If a bracer is in the left slot, it should now always be favored over the right.
  • Corrected an issue in the WearChange struct which hopefully fixes a few random minor problems we've seen.
  • Removed some custom messages sent by merchants.
  • Removed server agreement rules.

Haynar

  • Restored a change to spell casting animations.
  • Fixed some comparisons in eqstream.
  • Improved some of the timer functions to be more efficient. This reduces idle zone cpu usage.
  • Removed unused Lua methods for Archery and Throwing Attacks.
  • Changed delay range for static mobs, when they return home, after losing aggro. This is closer to how EQLive behaves.
  • Improved some of the precision calculations associated with geometry calculations.
  • Optimized the calculate heading to target, to go directly from radians to EQ angles. Rather than go Radians -> 0-360 degrees -> EQ angles.
  • Added delayed damage for bolt spells, archery and thrown weapons.
  • Added mob and geometry collisions for bolt spells, archery and thrown weapons.
  • Mobs fleeing should stop turning to face their attackers behind them (hopefully got rest of cases where this was happening).
  • NPCs spawned with the #spawn command will now have a default size assigned.

Database Robregen

  • All Gorilla type NPC in Plane of Mischief should drop Library card.
  • Slightly increase drop chance for Hilt of the Nobleman from skeleton in Najena.
  • Vengeful skeletons in everfrost should no longer flee at low health.

Cavedude

  • fixed the graphic for Frist Giant Femur
  • Fixed alchemy skills.

5-17-2017

Code: Cavedude

  • Fixed corpses not displaying the correct armor appearance.
  • Changed many instances of printf to use Log() instead to prevent writing to file.
  • Potion families (regular, minor, greater) will now use clicklevel instead of the caster's level for the spell effect level.
  • Removed attuned code, which was already largely disabled anyway. Also… removed color methods from the ItemInst code, which was a remnant from armor dye.
  • Feigned before an NPC begins to flee will again clear damage credit.
  • Renamed RemoveDamageCredit() to RemoveFromDamageCredit() to be uniform with existing methods in this code block.
  • Added PERMAROOT_FLEE special ability to force a NPC to flee (turn and stop attacking) when permarooted. They will attack as normal when rooted by a spell.
  • Moved PERMAROOT_FLEE to DESTRUCTIBLE_OBJECT's position since that isn't used.
  • Selling an equipped item to a merchant will now properly update your appearance.
  • Added the ability to force a NPC to equip a loot drop item. This can be used if you need a NPC to prefer one item over another in a specific slot. It can also force a NPC to equip a bow or other ranged weapon instead of primary/secondary items. Once an item is forced into a slot, items added later will not override it.
  • Ranged items will now display properly in-game for NPCs.
  • Fixed an issue causing NPCs to not equip ammo items.
  • Made several changes to AddLootDrop() to reduce memory usage and make the code easier to read.
  • The method NPCs use to determine item material in AddLootDrop() for OP_WearChange is now matches the one used by all mobs in GetEquipmentMaterial().
  • Moved several NPC equipment methods from npc.cpp and mob.cpp to loottables.cpp.
  • Changed AddLootDrop() calls to be uniform with the database column's default values.
  • Removed several methods that were duplicates or no longer used in the NPC equipment code. (RemoveItem() being one of the primary ones.)
  • Rewrote three methods that delete NPC items to be safer, to send out OP_WearChange, and to properly clear the equipment variable for the given slot.
  • Fixed some odd behavior that occurred when a NPC has duplicate items and they have their pockets picked.
  • Hopefully improved the loading of Bazaar trader items.
  • Added rule AlKabor:LightBlueExpPenalty which controls how much of an experience penalty light blue conned mobs will have. This can be tweaked until it feels AKcurate if need be.
  • Removed the Client variable XPRate which was unused.
  • Removed support for evolving items, and several item columns we are not using in the database.
  • Added rules to change the exp percentage for each con except green.
  • Feign will no longer prevent exp gain while in a group.
  • Anybody in a group can now accept a raid invite on behalf of their group, assuming the whole group is in the same zone.
  • Merchants with merchantid 0 will no longer open a merchant window.
  • Updated the rules regarding bracer textures to match how the client handles them. If a bracer is in the left slot, it should now always be favored over the right.
  • Corrected an issue in the WearChange struct which hopefully fixes a few random minor problems we've seen.
  • Removed some custom messages sent by merchants.
  • Removed server agreement rules.

Haynar

  • Restored a change to spell casting animations.
  • Fixed some comparisons in eqstream.
  • Improved some of the timer functions to be more efficient. This reduces idle zone cpu usage.
  • Removed unused Lua methods for Archery and Throwing Attacks.
  • Changed delay range for static mobs, when they return home, after losing aggro. This is closer to how EQLive behaves.
  • Improved some of the precision calculations associated with geometry calculations.
  • Optimized the calculate heading to target, to go directly from radians to EQ angles. Rather than go Radians -> 0-360 degrees -> EQ angles.
  • Added delayed damage for bolt spells, archery and thrown weapons.
  • Added mob and geometry collisions for bolt spells, archery and thrown weapons.
  • Mobs fleeing should stop turning to face their attackers behind them (hopefully got rest of cases where this was happening).
  • NPCs spawned with the #spawn command will now have a default size assigned.

Database Robregen

  • All Gorilla type NPC in Plane of Mischief should drop Library card.
  • Slightly increase drop chance for Hilt of the Nobleman from skeleton in Najena.
  • Vengeful skeletons in everfrost should no longer flee at low health.

Cavedude

  • fixed the graphic for Frist Giant Femur
  • Fixed alchemy skills.

5-3-2017

Code: Cavedude

  • Disciplines will no longer be faded on client death.
  • Player armor textures will now be set in a variable each time a client initiated wear change occurs. This allows us to use these variables when sending appearance instead of iterating through items. It also allows us to send "bugged" armor appearances due to illusions. Because weapons are always sent/expected by the client, there is no benefit to store those as variables.
  • OP_WearChange will no longer be sent for armor slots while illusioned as a non-playable race. Primary/Secondary will always be sent, to match what the client expects.
  • WearChange will now only be sent for the helm slot when a player illusion fades (the client doesn't seem to keep track of the helm for whatever reason here.)
  • Removed SendTextureWC() as WearChange() has replaced its functionality.
  • NPCs will now yell for help when a detrimental spell hits them and they are mesmerized.
  • Fixed many memory leaks in bazaar trading, and a couple other minor ones else where.
  • Removed support for charm and power source inventory slots. This reduces the size of our items in shared memory, and removes a memory leak in the quest parser.
  • Some more memory leak and misc fixes found in debugging.

Haynar

  • Owner's of pets will now add to the rampage list, if the pet gets added to the hatelist of a mob that rampages.
  • Additional Memory Leak fixes.
  • Fixed some memory leaks with LuaParser
  • Updated hazard checks at a distance to check further before going direct line of sight.
  • Spells with push components, should now apply the push immediately.
  • Stunned or mezzed mobs should now be moveable by spells with a push component.
  • NPCs casting spells, will now update positions if being pushed by spells or combat.
  • Fixed a potential faction war source, associated with rampage.

Database: Robregen

  • Sentinel's voice in western waste should longer aggro on AE.
  • replace a lower identical Rune of Fulguration with the one that drops off of higher level NPC for Energy Storm Recipe.
  • Slightly increase various drops chances from Dark Elves in 2nd floor of Plane of Hate.
  • Wooly Spider Silk Net should now be more expensive to buyback from vendor.
  • Slightly increase the drop rate for reinforce rhino hide armor in Kurn's Tower.
  • Kandin Firepot will now have a server reset spawn timer of 72 hours.

Script: Robregen

  • Remove globals check from Kandin Firepot and replace with faction check for wizard epic.

Misc: Haynar

  • Updated pathing for highkeep.
  • Improved some pathing areas in velketor's.

4-26-2017

Code: Cavedude

  • Fixed a memory leak in SendWearChange().
  • Zone will now only load emotes that are used by NPCs in the zone.
  • Fixed the issue causing NPCs to attempt to cast the same spell family over and over.
  • Items dropped to the ground will now always point north.

Haynar

  • Fixed memory leaks associated with sending merchant inventory to clients.
  • Fixed memory leaks with combining fragmented packets from the client.
  • Added some optimizations to packet allocation in a few processes, and fixed some inconsistencies.
  • Fixed potential memory leaks with creating spawn/despawn packets.
  • Moved queue'd clientlist to std::deque.

Speedz

  • Removed unused files and code.
  • Moved a versioning system to world out of common, as it is not a "common" function.

Script Robregen

  • Correct the text reward on Sentry Kale "Dragon Tooth Choker" quest.
  • added a missing reward text and faction for Thekela_Meepup

Misc Haynar

  • Updated poknowledge.path to lower cpu use version.


4-19-2017 (hotfix)

Code: Haynar/cavedude

  • Fix for inventory items not showing up.

4-19-2017 "A great rustling appeared in the void as if the server derobed countless heroes."

Code: Cavedude

  • Corrected an issue causing damage shields to count towards XP added in the previous patch.
  • NPCs will act as if they have never been damaged before when a charm spell they are buffed with fades. This does not affect damage they do to other mobs while charmed. The owner of the pet will retain credit even after charm fades.
  • Corrected an issue that could potentially cause nobody to get credit for a NPC kill.
  • Adjusted the Feign Death skill to have a lower success chance at lower skill levels.
  • Sneak will no longer prevent quest say triggers from working.
  • Group exp split rewrite. Simplified the code and added comments and logging to make it easier to read. It is also less likely to cause issues due to counter variables with invalid values. The counter variables are now set in a single loop, instead of being set and then possibly changed later on.
  • Corrected an issue sometimes causing the split code to attempt to hand out exp, when nobody in the group qualified.
  • The server will no longer ignore /sit packets that occur after the spell is cast, but before Eye of Zomm takes control of the client.
  • Changed playeraction to use the animation enums instead of meaningless numbers.
  • Rain spells will now use the beacon's entityid in OP_Action instead of the caster's so the caster is no longer forced to stand to other players on each wave.
  • Some more tweaks to the Feign Death skill chance.
  • Reclaim Energy will now use the pet's current HP to help determine the percentage of mana that should be reclaimed.
  • Reclaim Energy now works with the Mage epic pet.
  • TGB spells will now hit the caster regardless of raid affiliation.
  • The server will no longer allow Foliage Shield to land on other groups/raids when TGB is used.

Haynar

  • Fixed some hatelist management issues that resulted in no faction hits on some mobs during ring war 10.
  • Added a fix for picking up items off ground, to prevent item loss in certain situations.
  • Zoning with a bag on the cursor will now add the internal items to the character weight appropriately.
  • Fixed some memory leaks, potential leaks, and some general inconsistencies.
  • Added some fixes for potential world server crashes.

Database: Robregen

  • Added server reset timer to HoT ToV drakes, Named Wurm in NToV, Angry Goblin, and HS boss.

4-6-2017

Code: Cavedude

  • Corrected an issue causing damage shields to count towards XP added in the previous patch.

Misc: Speedz

  • move queryserv tables to separate VM to improve game server performance. Did not go as planned, reviewing for a different date.
  • Magelo - Changed the need to click worn items into a hover to see details.

4-5-2017

Code: Cavedude

  • /who all will now display AFK and LFG.
  • Pets will now use the same melee range as their owner.
  • Damage done to a NPC used to credit XP and the corpse upon their death is now kept in its own list, instead of using hatelist.
  • Removed the hatelist methods that previously handled this functionality. As a result, the Lua export GetHateDamageTop() has also been removed. (It was unused.)
  • Damage added to this list by all player pets will now count towards their owner to correct issues with charmed pets losing damage credit when charm fades. (NPC pets will keep track of their own damage, since they don't despawn when their owner dies.)
  • Rewrote a large portion of NPC:Death() to implement this new list, optimize the method, remove obsolete code, and correct a potential zone crash.
  • Rule AlKabor:HighLvlCorpsesAlwaysSpawn has been changed to AlKabor:LevelCorpsesAlwaysSpawn and now can be used to specify the level NPCs will always leave corpses if a player is present (defaults to 55.)
  • NPCs will no longer seek out other NPCs to attack in zones that never idle and have no players. (Boat/Quest zones.) This saves a good amount of CPU in local testing.
  • NPCs will no longer fully process death in zones that are idling (this shouldn't happen much anymore due to the above change.)
  • Created a new variable for /assist range, and set it to be slightly higher than /target range.
  • [Performance] Fixed a large overhead issue where every single NPC in a zone was checking to depop themselves as a swarm pet every 3ms regardless of being a swarm pet or not. Swarm pets now check to depop only when their timer is up (Akkadius from eqemu)
  • Converted the loginserver to use LogSys, removing the old error_log system. The categories used in this commit are Login_Server, Netcode, and Error. Set all three to general in order to get full log output.
  • The login's trace and world_trace options have been removed from the database. In order to enable those logs, set Netcode to general.
  • The packet_dump in/out options are still valid, and require Login_Server to be set to general.
  • Added DumpServerPacketToString() so that Server Packets can be dumped using LogSys instead of DumpPacket(). DumpPacketToString() already exists for Application Packets. Converted several DumpPacket() calls to use LogSys.
  • Some console color syntax may have been lost in this commit. New LogSys categories with a custom color can be added in that's an issue. By default, the colors are yellow for Login_Server/Netcode and red for Error.
  • Aggro scan timers will now be disabled in no combat zones.

Haynar

  • Increased Rule PetCommandRange to 200. This is used for pursuit range of pets.
  • Updated some message ranges to clients.
  • Dragging your own corpse will no longer cause aggro in some Velious zones.
  • Added some optimizations in hatelist management, where distance to mob was being calculated multiple times.
  • Added a min persuit range where timers are used and mobs will continue to chase. This will help prevent runners in ring war from being kited.
  • Pets will no longer apply hate bonuses due to closer proximity. Low HPs are still appealing though.
  • Adjusted some spell casting AI values to save CPU cycles.
  • Added combined packets for OP_MobUpdate

Robregen

  • Updated glm library to 0.9.8.4 (from 0.9.6.1) (Uleat from eqemu)
  • [Performance] Reduced CPU footprint in cases where a client is checking for aggro excessively every 750 millseconds. This has been adjusted to 2 seconds per new rule RULE_INT(Aggro, ClientAggroCheckInterval) - When zones have many players, with many NPC's, this adds up quickly (Akkadius from EQEmu)
  • [Performance] Removed a timer where clients would constantly calculate light amount on equipment every 600ms, instead clients will update light when changing equipment or entering a zone (Akkadius from EQEmu)
  • [Performance] Disabled enraged timer checks for NPC's that do not actually have enrage as a special attack (Akkadius from EQEmu)
  • [Performance] Remove unecessary log calls from EQStream hot paths (read/write) (Akkadius from EQEmu)
  • [Performance] Reworked how all log calls are made in the source (Akkadius from EQEmu)

Speedz

  • Added settings to allow/block client types.

Database: Robregen

  • Coldain Ring 10: Narandi is now flagged for giant bane.

Script: Robregen

  • Coldain Ring 10: Added a missing shout from Zrelik when issue the command to call all Coldain.
  • Coldain Ring 10: Removed an odd emote made from Dobbin Crossaxe when a command is issue to call all coldain or Dobbin.

3-22-2016

Code: Cavedude

  • Dying while LD will now correctly send you to your bind point.
  • Spirit of Bih`Li will again properly stack with illusions that aren't also runspeed buffs.
  • Throwing and ammo items will no longer be placed in a container that is below their size capacity when a trade is canceled.
  • Added wandertype 8, which is labeled GridRandomCenterPoint. Wandertype 7 has been renamed to GridCenterPoint to avoid confusion. This new type causes a NPC to alternate between a random waypoint in grid_entries and a random waypoint marked with the new centerpoint column set to true. If no waypoints are marked as a centerpoint, this wandertype will not work. There is no numbering requirement or limit for centerpoints. You can have as many as you need.

Haynar

  • Updated damage message range.

Robregen

  • Config File Update Initial Update (phredi from eqemu)
  • Fixed various compile errors due to Config File update commits(KimLS, Mackal, Akkadius from eqemu)
  • Add luaRock Support (Mackal from eqemu)
  • Allow admin telnet connections from localhost without requiring credentials to world (Akkadius)
  • fixed various memleaks (Mackal from eqemu)

Database: Torven

  • mischiefplane: Some missing spells/procs added to NPCs and some stat adjustments.

Script Robregen

  • fixed a couple of name that should reflect a player's name with Atheling Plague and Hierophant Dexl.

3-8-2017 (hotfix)

Code: Cavedude

  • Removed the dupe lore check that occurs before a tradeskill recipe is performed as it breaks some recipes. The lore check will only be done after the recipe completes, meaning the product will be deleted if you already have one in your inventory.

3-8-2017

Code: Cavedude

  • Added new pathgrid type 7. This grid causes a NPC to alternate between the first waypoint in their grid (Number 1 in the editor) and a random waypoint. (1 - 7 - 1 - 4 - 1 - 11 - 1 - 5 - 1, etc)
  • Changed the wandertype IDs to an enum so we know what we're looking at.
  • Added rule Character:DefaultExpansions which allows us to change the expansion that is set when a new account is created without having to change the account database table.
  • Implemented the Necro AA Flesh to Bone.
  • Added singingMod to the SE_AddSingingMod spell effect. This should fix the Bard AA Singing Mastery.
  • Corrected the AA resue timer message to use white text.
  • Removed the player_lootitem namespace so we don't need to maintain two identical ServerLootItem_Struct structs.
  • Added new method GetFactionValue() and exported it to Lua. This works similar to GetFactionLevel() except it returns the numeric faction value instead of the con value.
  • Corrected a stacking issue involving Speed of the Shissar.
  • Corrected an issue causing a duplicate lore item to be allowed during certain tradeskill combines.
  • Mod Rods' reuse timer will now persist over camping and zoning.
  • Fixed an issue causing tradeskill recipes to incorrectly use a product item as the recipe container if all other variables succeeded.
  • Tradeskill recipes that would result in a duplicate lore item on success will now fail before any items are consumed. This will prevent item loss and a possible item desync.
  • Corrected a tradeskill packet desync caused by not sending the reply packet OP_TradeSkillCombine when a tradeskill fails due to a race or class specific combine.
  • Removed some methods related to the overhauled tradeskill window newer clients have.
  • Fixed a Windows compile warning in GetDiscTimerID().
  • Bard songs with an ATK component (McVaxius` Rousing Rondo, Jonthan's Provocation) will now use normal stacking rules when compared with a spell that also has an ATK component. This corrects a buff slot desync seen in this situation.
  • Going into water on a horse will now fade the horse buff.
  • Bard beneficial AE spells will no longer land on pets.
  • Identified LastModulated field in the player profile, and we're now populating it with data and sending it to the client.
  • Implemented opcode OP_ResetSkill which resets an activated skill. (Thanks to Haynar for helping to work out the struct.)
  • The server timer for Mend will again survive zoning and camping. The skill will become available again after the original timer expires, even if pressed. (The client incorrectly resets the button.)
  • Resisting a spell will now break invis.
  • Movement speed buffs will now be blocked by illusion buffs that have a movement speed component.
  • Spells that land on any target will no longer break Feign Death.
  • SE_LimitSpellType will now check for spells that land on any target and treat them as Beneficial.
  • Smoothed the death experience loss at higher levels a bit.
  • Sacrifice will no longer cause the target to remember their HP and mana values.

Haynar

  • Many netcode updates. Many improvements to prevent client desyncs.
  • Added more size checks in inbound packets to ensure buffer is adequate.
  • Sends to client will keep track such that acks do not get more than 120 behind, preventing going into packet loss.
  • Added more checks when rolling over the ARQ under high data rates and packet loss, to prevent client from desyncs.
  • Improved pathing logic for finding hazards.
  • Reduced damage message range to match client.

Database: Robregen

  • Siren: neriad maiden / mistress should now be waterbound only
  • Warrior Epic will now combine up a new container and delete the old one. Can now have both 1h weapons and 2h weapons in inventory if use summon mage weapon "sword of runes".
  • stone skeleton in Lake Rathe should now respawn at 6 minutes.

Torven

  • necropolis: Frakadar's Talisman now a guaranteed drop.

Script: Robregen

  • Invisibility and Alliance line of spells should now work with faction involving scripts such as Shaman / SK epic quest and Circlet of the Falinkan quest.

Misc: Haynar

  • Fixed some pathing issues in Lower Guk and Estate of Unrest.

2-22-2017

Code: Cavedude

  • Refreshing a buff or debuff will be blocked if the effect values are the same, and the second caster is lower in level than the original caster.
  • Skills that are affected by a skill mod will now use a hard cap of 252.
  • Moved racial skills to CanHaveSkill() and MaxSkill() to avoid having to do extra checks in multiple places. (Removed the extra checks I found.)
  • Added support for randomly spawned NPCs. Instead of requiring a spawnpoint, these NPCs will randomly spawn anywhere between the specified roambox. They will then begin pathing within that roambox. If no roambox exists for the given spawngroup, no random spawns will occur. The NPCs will be pulled from spawnentry for the given spawngroup like normal spawns are. When a random NPC dies or despawns, a new NPC will respawn in a new location after the respawntimer expires.
  • Corrected an issue causing NPCs to use their off-hand weapon's animation when no weapon can be found in their primary hand.
  • Fishing an edible item will now use the item's name in the message, instead of telling you that you caught "something."
  • Removed the code to fish up a NPC.
  • Spilling your beer while fishing will now delete a single charge of an alcoholic beverage in your inventory. If you have no alcohol on you, you will no longer get the spilled beer message.
  • Removed the hardcoded forage items, as they are completely handled by the database. This should also eliminate incorrect messages seen while foraging.
  • Corrected the issue causing shuttles to fall out of sync when there are no players in the zone.

Haynar

  • Fixed potential crash issues associated with iterator handling.
  • The pause parameter with lua moveto should now work correctly.
  • Fixed a potential crash in Client::AI_SpellCast()
  • Updated crash fix to use MAX_PP_MEMSPELL

Database: Robregen

  • Removed the research recipe for distilled mana.
  • freeport firepot in Timorous Deep should now work.
  • Fixed the recipes for Spiritstones so now an extra step should be taken instead of skipping it.
  • fixed newbie Warrior and Priest Dismal Weapon to prevamp version.

Torven

  • Outdoor Kunark dragon respawns reduced to 3-4 days (3.5 days +/-12 hours)

Script: Robregen

  • Jemoz Lerkarson should now cast heal to the player as the reward for Corrupt Guards (cleric).

Misc: Haynar

  • Fixed some pathing issues in templeveeshan.path around first four-way in West Wing, and one way walls in HoT.

2-17-2017 (hotfix)

Code: Cavedude:

  • The charges variable should now be uniform in methods where NPCs handle items.
  • Rewrote the code that NPCs use to swap their item's inventory slot during a Disarm to be safer, cleaner, and to prevent an exploit. MoveItemToGeneralInventory() can also be used in other systems if need be.
  • Updated player_lootitem to match ServerLootItem_Struct.


2-15-2016

Code: Cavedude

  • Fixed the issue causing weapons to not update when swapped.
  • FindBestZ() will now check to make sure the Z it selects isn't lower than the zone's underworld coordinate. This will help to reduce the amount of NPCs that fall below the world. The underworld coord may need to be tweaked in problematic zones.
  • Feign Death will now display a message when it is broken due to being a target of a detrimental spell.
  • The NPC Gate message will now be filtered under critical spells.
  • Ground spawn items within a bag will now log the bag's ID when dropped or picked up in QueryServ.
  • Flaming Sword of Xuzl and Unswerving Hammer of Faith will no longer taunt.
  • Heavily reduce idle cpu footprint with many zone processes loaded simultaneously and not active (Akkadius from eqemu)
  • Handle_Connect_OP_WearChange will now be processed instead of returning, and all client initiated OP_WearChange packets will no longer send a packet to the sender.
  • Corrected an issue causing a helm update to be sent when weapons are swapped. (Todo: Figure out why the client doesn't always send OP_WearChange on swaps so this code can be removed entirely.)
  • The client initiated OP_WearChange that happens due to removal of a helm will now send the packet properly if the client has showhelm off.
  • When a new player with a helm that has a graphic enters a zone, an additional packet will be sent to every player with showhelm off to hopefully prevent general texture updates from overriding the helm texture.

Haynar

  • Netcode updates to fix desyncs for very low latency connections.
  • Added netcode improvements to help with desyncs.

Robregen

  • Apply KLS' tweaks to Log.Out (CPU saves) (Akkadius from eqemu)

Database: Robregen

  • Raster of Guk / PH should despawn and respawn
  • Added a missing east common NPC "a leaf scarab" as well as a missing drop "Large leaf scarab eye".
  • Added a missing drop "Rijoelys Dancing Rapier" from Rijoely in Velketor
  • The following effects items were fixed to match the era we are in: Abram's Axe of the Stoic, Tolan's Darkwood Boots, Singing Steel Vambracess, Wolves Blood Potion lines, Fleeting Lanquor Potion line, Spiroc Wingblade, Spirit Caller's Boots, Spirit Weaver's Boots, and Rune Crafter's Boots.
  • Added a missing NPC "Omorb" in Qeynos Catacomb.

Script: Robregen

  • Fixed the script for The Button Girl that was not responding to hail.
  • Added a missing Quest for "Whisperling" in Shadeweaver.

2-8-2017

Code: Cavedude

  • Moved OP_WearChange from encode to native code.
  • Removed hero_forge_model and other out of era code in OP_WearChange.
  • Helms using idfile IT240 and material 0 will now send their idfile in OP_WearChange instead of their material. (This fixes 20 custom helms.) The same was also done to the character select code.
  • Cleaned up some logic in the character select armor appearance code.
  • Removed the player tint code for LoY dye.
  • Added code to ensure helm updates are always sent to other players.
  • Replaced meaningless numbers in many material loops with the informative enums MATERIAL_BEGIN and MATERIAL_END.
  • Added player command #showhelm. Full syntax is:
  • #showhelm on/off [all]
  • This toggles all player helms (including your own) on or off both in-game and at character select. If the optional "all" argument is used, all characters on the current account will be toggled. If it isn't used, only the current character will be affected. The showhelm option is saved in the database per player, so it doesn't need to be toggled each time you play. Also, different characters on the same account can each have different settings if desired. This command will not work for NPCs who spawn with helms. (It may work if the NPC is given a helm, but that is untested.)
  • Disarm will now return magical weapons to the NPC's inventory, instead of failing.
  • Added IMMUNE_DISARM special ability, to allow content developers to mark specific NPCs as being immune to disarm.
  • Made Disarm() a virtual method to clean up the code some.
  • Form of the Great Bear will now turn Iksar into a black bear.
  • Group invites will no longer place players in a existing raid as an ungrouped member if the group they were invited to has become full. (They will need to be raid invited or invited to another group.)
  • Moved up some more events and emotes on NPC death.
  • Changed the merchant item quantity cap to a variable, and set it to 500.
  • NPC database emotes now supports basic variables. More than one variable can be used at a time.
  • A NPC can now have multiple emotes per event type. They will randomly choose one of the emotes each time it is triggered.
  • The hailed emote trigger will now pause and turn the NPC to face the hailing player.
  • Corrected an issue causing NPCs to not be able to equip secondary only items without first equipping a primary.

Haynar

  • Pushback spells will now push in the direction the caster is facing.
  • Added a check for a potential buffer overflow error with TCP communications.
  • Added a check for releasing stale USC connections that closed abnormally.

Torven

  • archery hate reduced

Robregen

  • remove unused web interface related code.
  • moved luabind out of dependencies folder to the main server folder.

Database Robregen

  • Blackburrow: Added missing gnolls in the hallway leading to everfrost.
  • Shadeweaver: Loda Kai Camp will either spawn all humanoid or undead after a duration.
  • Frozen Tower: a shaded torch is now on Tserrina faction.
  • Kithicor: Lhrance's Ring should no longer drop from various undeads.
  • Nektulos: Added 2 missing guards at the Neriak Entrance : Dragoon_J`len and Guard_E`tru
  • Nektulos: The guards at the Neriak entrance should now randomly emote different text each time.
  • Qeynos HIlls: Added a missing guard at the watchtower: Mogan_Delfin
  • Misty Thicket: Reduced the roambox in the x direction near Runnyeye requested by Harakiri.
  • Emotes: Added various "Time to die <player/mob> to database that normally was used in a script.

Script Robregen

  • Planar Exchange in Plane of Knowledge is now active without xp rewards.
  • Breya Nostulia (Kobold Shaman Artifacts): Fixed a questsay that wasn't responding.
  • Vira (Shovel of Ponz) : should now give the correct text when turning in the components.
  • Chalice of Conquest should now be completable.
  • Joyce: update the faction rewards
  • Kaladim: update faction hits verified from live for Jeet quest lines and change faction required also verified.
  • add a missing hail text to Varsoon in Qeynos Hill.
  • Emotes: Removed all scripts that involve the emote "Time to die <player/mob" since it now implemented in the database.

Torven

  • Ring of Vulak'Aerr is now active.

2-3-2017

Code: Cavedude

  • Fixed a crash in the character consent code.


2-2-2017 (Allaclone)

llaclone: Robregen

  • Lore and Artifact items should now display as being lore or artifacts.
  • Items should now display whether they are stackable or not.

1-27-2016 (hotfix)

Code: Cavedude

  • Corrected another stacking issue with Resurrection Effects.

1-25-2016

Code: Cavedude

  • Discipline timers will no longer be cleared on death.
  • LFG will now be cleared when a player accepts a raid invite, or for both players when a raid is created.
  • Corrected an issue where a group leader could not use group chat until they zone.
  • Players in a group will now receive a message when another player attempts to invite them to another group.
  • Players with 201 skill or higher in Bind Wound can now heal up to 70%.
  • TGB will no longer work on items with group spell click effects.
  • NPCs will now assist if the attacker is a red con in NPC vs NPC combat. Players and player pets are not affected by this change.
  • Corrected an error in some pet names causing spaces to be removed when damage is reported.
  • Rogue poisons that are applied to piercing weapons will now only proc once on the first successful normal attack and then will fade.
  • Ranger archery bonus will now be applied to permarooted NPCs.
  • QuestReward() will no longer give faction hits if the NPC is charmed.
  • Corrected an issue causing pet health to exceed 100%.
  • Corrected spell stacking rules for resurrection effects and for beneficial vs detrimental spells with an AC effect in slot 4.
  • Optimized /consent a bit to hopefully prevent an issue causing consent to be denied when it shouldn't be.

Torven

  • Ignore distance now has a timer that starts when the entity has outdistanced the NPC. When the timer expires, the entity is removed from the hate list. This time is currently set to 180 seconds, but what it was on AK was unknown. Debate welcome.
  • NPCs will now not ignore mobs that outdistance them AND have damaged them until 24 seconds have passed. Entities that have done no damage will be ignored immediately after exceeding ignore distance.
  • NPCs that have nobody in range to chase will now loiter (if they are loitering NPCs) before returning home. When they return home, they will remain at run speed so long as they hate somebody.
  • NPCs will no longer forget non-feigned players once they reach their home points.

Robregen

  • Added an exception for increase client combat range for velious dragon race type in Temple of Veeshan.
  • memleak fix for world container object (credit to deomonstar from EQEmu)

Database: Robregen

  • Correct the spellset for a lava dancer in ToV.
  • Highpass Gnolls should now loop around toward Highkeep instead of toward Kithicor.
  • correct the faction for Lobal Postugger in Ak'Anon.
  • correct the faction for Kszan Punox in Neriak Third Gate.
  • Blazing Elementals should no longer attack the Goblins in SolA
  • slightly increase the drop rate for Shadowed Books and Shadowed Balls from Shadowed men.
  • Added missing NPC "an exiled legionnaire" in Cauldron.
  • Added missing NPC "Marlin Shirtov" in Highpass.
  • Fixed the Dismal Priest Breastplate Recipe.
  • Fippy Darkpaw should now spawn at various location before he makes his way toward the Qeynos Castle.
  • Squire Wimbley should now be at the correct location in East Karana.
  • Added a missing "a putrid skeleton" and his placeholder "a dwarf skeleton" in South Karana for the quest "Cromil's Remains".
  • the item "Dwarf Bones" should now drop from the right putrid skeleton in South Karana.
  • Added a missing NPC "Oculys Ogrefiend" in Rathe Mountain

Torven

  • sleeper: Ventani MR increased.

Script: Cavedude

  • Charmed NPCs will no longer give faction hits in quests.

Robregen

  • moved faction check for Caradon in The Hole.
  • fixed a variable in relating to Velious Kael bracer armor quest.
  • add a depop with timer for Lord Elgnub and PH to emulate live like in Blackburrow
  • Update orc runner scripts for kelethin.
  • Readjust faction required and faction reward for Bumle Reminjar in Kaladim.
  • Added missing texts for Bumle Reminjar in Kaladim.
  • Readjust faction reward for Gunlok Jure "Cromil's Remain" verified from Live in Kaladim
  • readjust faction and xp % verified from live for blackbox quests in Ak'Anon.
  • readjust faction reward for Dature Nightseer in Kaladim.
  • readjust faction reward for Dru Razbind in butcherblock.

Harakiri

  • Aenia Ghenson: Now uses the current Players Name when talking not a hardcoded one
  • Behroe Dlexon: Now Rewards the Shawl of the Wind Spirit
  • Vynon Estaliun: Added Faction Check and Fixed Faction Reward for Catfish Tail Quest
  • Laoni Reista: Added Faction Check and Fixed Faction Reward for Cleanse the Ocean Quest
  • Rodgar the Tall: Fixed Faction Reward for Peacekeeper Staff Quest
  • Emil Parsini: Fixed Faction Reward for Peacekeeper Staff Quest
  • Lumi Stergnon: Add Faction Checks for all Quests, Add Missing Dialog regarding High Guard Staff, Fixed Faction Reward for Skeleton Killing Quest, Fixed Faction Reward for Peacekeeper Staff Quest
  • Weligon Steelherder: Added Faction Check for all Quests, Fixed Faction Reward for Deep Six Cutlass Quest, Fixed Faction Reward for Barnacle Breastplate Quest, and Fixed Faction Reward for Odus Pearls Quest
  • Breya Nostulia: Added Faction Check for Midnight Sea Mail Leggings Quest
  • Gans Paust: Added Faction Check for Midnight Sea Mail Sleeves Quest
  • Dleria Mausrel: Added Faction Check for Fisherman and Zombie Flesh Quest and Fixed Faction Reward for Fisherman and Zombie Flesh Quest
  • Bait Masterson: Fixed Faction Reward for Guild Tunic
  • Agryn Moonfield: Added Dialog about guild coin
  • Leraena Shelyrak: Added Faction Check for Guild Coin/Kobold Quests
  • Jras Solsier: Added Faction Checks for Poacher Quests and Fixed Faction Reward for Poacher Head and Barbarian Head Quest
  • Tralyn Marsinger: Fixed Faction Reward for Bard Mail Quest and Fixed Faction Reward for Mail Delivery
  • Shondo Billin: Fix Faction Reward for Vasty Deep Ale Quest
  • Josper Kenshed: Added Faction Requirement for Ice Goblin Beads and Ilanic's Scroll and Fixed Faction Reward for Ilanic's Scroll
  • Markus Jaevins: Added Quest for Magicians Bones and Fixed Faction Reward for both Bones Quest
  • Shintar Vinlail: Added missing dialog
  • Toresian Fhabel: Added Faction Requirements for Inert Potion
  • Slansin: Fixed Faction Reward for Inert Potion Quest
  • Vasile Jahnir: Added Faction Requirement for Gloves of Gatecallers and Rungupp Quest and Fixed Faction Reward for both quests too
  • Dok: Fixed Faction Reward for Everburn Candle
  • Margyn McCann: Added missing text Trigger and Fixed Faction Requirement for Head of Granin O'Gill Quest
  • Waltor Felligan: Added correct Faction checks for Fungus Quest
  • Cappi McTarnigal: Fixed Faction Reward for Mammoth Claf Quest
  • Ysanna MacGibbon: Fixed Faction Reward for Gnoll Fur Quest
  • Cindl: Fixed Reward Text
  • Shamus Felligan: Fixed Faction Requirement/Faction Reward/Text for Shattered Caster Beads and Fixed Faction Requirement/Faction Reward/Text for Caster Beads
  • Lysbith McNaff: Added Faction Checks for orc wristband and goblin necklace quests and Added missing keyword trigger
  • Carver Cagrek: Added Faction Reward for Grobb Cleaver Quest
  • Nerbilik: Fixed Faction Reward for Grub Locker Quest
  • The Gobbler: Added Faction Reward for Preserved Leg Quest
  • Chef Dooga: Fixed Faction Rewards for Butcher Appron, High Elf and Human Flesh Quests
  • Guard Shilster: Fixed Faction Reward for Black Burrow Stout
  • Holana Oleary: Added Faction checks for Karana Clovers Quest
  • Cindle: Fixed Faction Reward for Polar Bear and Wristband Collection
  • Jinkus Fellingan: Fixed Reward Message
  • Iceberg: Added Hail Trigger and Adjusted Faction Reward for Lions Delight
  • Teria O Danos: Fixed Faction Reward for Lion Meat Shipment and Fixed Text Trigger for lion delight
  • Junth McMannus: Added Hail Trigger
  • Brenzl McMannus: Added Hail Trigger
  • Ulrich McMannus : Added Missing Text Triggers
  • Lars McMannus: Added missing Hail trigger
  • Sera McMannus: Added Missing Hail Trigger
  • Einhorst McMannus: Added missing trigger phrases for halas and home and Added triggers for Misla
  • Misla McMannus: Added Missing Hail Trigger and Fixed that you now get Lion Meat Shipment from her too
  • Renth McLanis: Fixed Faction Reward for Ivan McMannus Remains Quest, Adjusted Faction Requirement for trigger phrases, and Fixed Faction Reward for Langseax Quest
  • Dargon McPherson: Fixed Faction Reward for Elixir Quest
  • Megan OReilly: Fixed Faction Reward for Elixir Quest and Added Faction Check for Ivan's remains Quest
  • Arnis McLish: Fixed Faction Reward for Elixir Quest
  • Bryndin McMill: Fixed Faction Reward for Elixir Quest
  • Talin ODonald: Fixed Faction Reward for Elixir Quest

1-11-2017 (hotfix)

Code Haynar

  • fixed waypoint crash.

1-11-2017

Code: Cavedude

  • Ground Spawns (both dropped and picked up) are now logged by QueryServ including items within bags.
  • Player trade QueryServ logging will now log items within a bag.
  • Fixed an issue causing incorrect item counts and charges during trade logging.
  • Rewrote player and NPC item trade QueryServ logs to use the same table, qs_player_trade_items_log. Only pertinent information regarding the current item will be in this table. Coin and other information will be handled in other tables. The type column will also warn you if the item is possibly eaten.
  • qs_player_trade_log will log coin and item counts for player trades, and qs_player_handin_log will log the same for NPC trades. The schema of these two tables have been changed quite a bit, so the required SQL will archive the old table before souring in the new.
  • Dropping items to the ground due to being full will now be logged in qs_player_ground_spawns_log and will be marked, making these entries easier to identify.
  • Client::CreateGroundObject() will now handle the message when an item is dropped due to being full.
  • Corrected an issue where items within a bag may not be dropped correctly if a trade fails, is reset, and the player's inventory is full.
  • No drop quest rewards will now be forced to the cursor queue if the inventory is full. If the cursor queue is full, or the item already exists on the queue the new item will be deleted!

Haynar

  • Added a pause parameter for lua move_to in seconds. The format is move_to(x,y,z,h,save_guardpoint,pause) - The pause is in seconds, and how long they will pause when reaching their destination. The default is to pause for 5 seconds.
  • Fixed an issue where an aggro'd mob on a grid will not use pathing to return to their pathing.
  • Fixed an issue where large mobs returning to guard locations, may not find nearby path nodes due to being too large.
  • Mobs on a grid that have a move_to used, will now use path when available to return to their grid.
  • When a mob is aggro'd on a grid, they will return to the waypoint they are on if aggro is lost, rather than moving on to the next waypoint.
  • NPCs will now respond and start moving immediately following execution of the quest::MoveTo command.
  • NPC thrown items (i.e. spears) will now show the correct item flying through the air.

Torven

  • Precise weapon damage caps implemented. Values+logic taken from a decompile done by Demonstar.
  • Level 20-39 players now have high weapon damage caps.

Database: Robregen

  • goblin should no longer path into the safe room in Droga.
  • added missing faction to Wallin Slyfoot for "Innnoruuk Disciple Quest"
  • The Kly in Dalnir should now be an ultra rare spawn.
  • All Dye Fine Plate Armor combine should now return the plate armor if failed.
  • Added missing Dye Plate Armor recipes.
  • Added missing loots to various Kerrans in Kerra Isle.
  • Steel Warriors should no longer be kos to Human Bert Shadowknights and Necromancer.
  • Added missing Gnolls spawn points in Highpass.
  • Correct the Orc spawns in Highpass to match spawn log from AK.
  • Readjust spawn timer to Orcs in Highpass.
  • Guards near the East Karana and Kithicor zone line should now roam.
  • Dyllan Starshine should now spawn under a tent and only path every once in a while.
  • Added 2 missing patrol to a smugglers in Highpass.
  • Added missing NPC Volunteer Renlor and Volunteer Delharn to Highpass
  • Added missing rare npc Bidl Frugrin in greater faydark.
  • There could be 2 Drakkel Blood wolf up at any time in the Great Divide.
  • Added a missing loot "A Doll" to the shark in qeynos catacomb for the "Indaria's Doll" Quest.
  • Crocodiles in Oasis should now conned KOS but should not aggro.
  • The quest combine for "The Geologist's Purloined Toos" should be fixed.
  • The quest combine for "Airtight Box" should be fixed.

Torven

  • beholder: Slime Crystal Staff drop rate reduced.
  • sirens: Ignore distance reduced to 230 on all NPCs.
  • frozenshadow: Ignore distance reduced to 230 on all NPCs.

Script: Robregen

  • Fixed an issue that was missing a function call with Tundra Jack in Everfrost.
  • Rewrote "Tomer's Rescue" removing the need for quest globals. add a conditional to avoid resetting timer. Add a timer to 20 minutes before Tomer reset to back to his area.
  • Added some missing texts for the following Highpass NPCs: Captain Ashlan, Captain Orben, Volunteer Delharn, and Volunteer Renlor.
  • Ring 10: Remove the zone repop message since it didn't exist in our era.
  • fixed moveto function for Sigan Ibirkun escort.
  • Adjust faction reward as well as faction requirement for questsay based on Alla for Lysbith McNaff and Shamus Felligan
  • add a missing hail text for Nicholas in Rathe Mountain
  • add faction questsay check for the following NPC in Halas: Cappi McTanigal, Jinkus Felligan, and Margyn McCann.
  • Implement the Guiding/Tour Quests in Halas for Adon McMarrin, Alec McMarrin, Andres McMarrin, and Cian McMarrin.
  • Update missing texts for Greta Terrilon in Halas.
  • Rewrote and organized scripting for Holana Oleary and Margyn McCann in Halas.
  • Update to use a better reward function for Jinkus Felligan of Halas and Eracon Kregan of Qeynos.
  • Implemented Putrid Skeleton and The Undead (Partial to unsolved.) Quests.
  • Implemented Frontier Mountains Spawn Cycles.
  • Implemented Guide's Touring in Ak'Anon.
  • Added missing hail text and animation for Palav and Rajyk in Shar Vahl.
  • Readjust xp reward for goblin ear turn in to Captain Bosec.
  • Added missing summon item function for Manik Compolten in Ak'Anon.
  • Added trigger spawn goblin lackey for Echivul in Everfrost.
  • Change to use faction level for Ralgyn in Skyshrine.
  • Ring 8: Fixed a lua crash when there's a missing mob destinated to move to another location.
  • Switch faction order reward for Chamberlain Krystorf.

Harakiri

  • Brunar_Rankin, Bronto Thudfoot, and Lenka Stoutheart: Added missing dialogs regarding Lenkas Pouch
  • Belious Naliedin: Added missing Faction Reward and Dialog Message for Naliedin lute Quest
  • Caleah Herblender: Added missing dialogs concerning the experiment quest, additionally added faction checks for turning in said quest
  • Brin Stolunger: Added missing faction checks for starting quests and turnin quest items, increased XP Reward for Quests too
  • Earron Huntlan: Added faction check for Kwints Quest
  • Flynn Merrington: Fixed Faction Reward for Erud Tonic turnin
  • Gehna Solbenya: Added missing faction checks and dialogs for blessings to the flock quest:
  • Ghul Rustem: Added missing dialogs
  • Grahan Rothkar: Added faction checks for escaped prisoner and mino shackles quest, Fixed Faction reward for escaped prisoner
  • Gregor Nasin: Added missing dialog regarding Lenkas Pouch
  • Added Missing Dialog to qcat/a_zombie
  • Added Missing Dialog about drosco to freportn/Daedet_Losaren
  • Adjusted confirmed Live Factions to qeynos/Eastyana Naestra
  • Added Missing Dialog to qeynos/Guard Calik
  • Adjusted Faction Reward to qeynos/Guard Elron
  • Added Missing Dialog to qeynos/Guard Naret
  • Added Missing Dialog to qeynos/Largron Welsh
  • Confirmed Live Faction/Randomize Reward to qrg/Larsk Juton
  • Adjusted confirmed Live Factions to qey2hh1/Minda
  • Adjusted Reward to qeynos2/Moodoro Finharn
  • Adjusted confirmed Live Factions to qeytoqrg/Neclo Rheslar
  • Adjusted confirmed Live Factions to erudnext/Nolusia Finharn
  • Added Script/Dialog for erudnint/Nolusia Finharn
  • Added Script/Dialog for qeynos/Nug Rellash
  • Adjusted confirmed Live Factions to freporte/Olunea Miltin
  • Adjusted confirmed Live Factions/Dialog to freporte/Palatos Kynarn
  • Added Missing Dialog to qeynos/Renic Losaren
  • Added Missing XP Reward to qey2hh1/Rongol
  • Added Script/Dialog for qeynos/Rucio Divella
  • Added missing Faction Checks to qeynos/Runethar Hamest
  • Randomize Cash Reward/Check Faction qeynos2/Sneed Galliway
  • Added missing Faction Checks to qeynos/Tabure Ahendle
  • Randomize Cash Reward/Check Faction qey2hh1/Tukk
  • Fix XP Reward qeynos2/Umvera Dekash
  • Add missing Dialog, Fix Faction Reward to qeynos/Unsar Koldhagon
  • Added missing Faction Checks and Dialogs to qeynos/Wolten Grafe
  • Randomize Coin Reward, Confirmed Factions to qeynos/Zamel
  • Lashun Novashine: Added missing dialogs. Fixed spell being cast when turning in gold. Fixed spell being cast when turning in bone chips. Now requires at least 2 bone chips to complete
  • Suuspa Clanim: Added missing dialogs
  • Serna Tasknon: Fixed Faction Reward for Shark Powder Quest
  • Tonmerk Plorsin: Added missing Dialogs. Added faction check to start shark powder quest. Fixed Faction Rewards for shark powder quest
  • Chesgard Sydwen: Added missing dialogs, Added missing faction checks for blanket quest
  • Daedet Losaren: Added missing dialogs, Added missing faction checks for specific trigger messages, Added Cash Reward for Beetle Eye Chest Quest
  • Lanhern Firepride: Added missing dialogs for donation quest
  • Enic Ruklin: Fix message trigger for donation
  • Priestress Caulria: Fixed Faction Rewards for Rabid Grizzlies and Fleshy Orbs Quest
  • Lempeck Hargrin: Added alternate quest ending for turning in a bad Prime Healer Potion. Added missing dialogs
  • Astaed Wemor: Added missing faction checks for trigger messages. Added missing dialog. Added possibility to return a bad cure for Lempeck Hargrin
  • Whysia Flock: Added Quest and Dialog for "Recharging" the Shining Star of Life
  • Joffrey Clay: Added missing dialogs
  • Cassius Messus: Added missing faction check for starting Lisera Lute Quest. Added missing dialog.
  • Added missing dialog regarding donation quest for the following NPCs: Largon Welsh, Danaria Hollin, Solani Dayadil, Gahna Salbeen, Moran Smith, Bassanio Weekin, Barthal, Rabley Trumend, Ton Firepride, Iala Lenard, Cassius Messus, Bait Masterson, Gerault Takenmaul, Rodgar the Tall
  • Crow: Added missing dialogs
  • Flynn Merrington & Moodoro Finharn: Added missing dialog trigger
  • Garuc Anehm: Added Faction check for Turnin Hurrietas Bloody Dress, Added Missing Quest+"Reward", Turnin for Busted Prayer Beads, Added Missing Quest+Reward, Turnin for Prayer Beads, Added Missing Quest+Reward, Turnin for Order Of Thunder Medal
  • Camlend Serbold: Fixed Faction check

1-4-2016 (hotfix)

Code: Cavedude

  • Corrected a flaw in the raid XP split code.

12-31-2016 (hotfix)

Code: Haynar

  • UCS Crash fix for a stream that was closed by the client.

Database: Robregen

  • fixed drops for lumpy goo in Dalnir

Script Robregen

  • Add another weapon to Mayor Gubbin list for Anniversary 2.

12-28-2016 "2nd year in operation anniversary"

PATCH HIGHLIGHT: Coldain Ring 10 added (Robregen - scripting and database / Torven - database) Anniversary 1 enabled. Anniversary 2 added (Robregen, special credit to Elroz for the write up)

Code: Cavedude

  • PVP maps regions will no longer cause spells to fail the region check.
  • Added QueryServ logging for coin deletion, coin moves to the trade bucket, /split, and optionally coin moves to and from the bank.
  • Corrected an issue causing coin only trades to not be logged correctly.
  • Corrected a potential crash in Group::SplitMoney().
  • Non-pet NPCs will now use their weapon's attack delay if it is lower than their innate delay.

Haynar

  • Added more sanity checks, to prevent UCS crashes from Stale client connections
  • Fixed an issue where mobs will try to face their target while fleeing. They can still hit stuff in front of them while fleeing, but they will no longer try to face their target and will stay pointed towards their ultimate destination.
  • Changed how groups are left in a raid, to help fix bugged groups when a player goes LD.
  • Fixed an issue with mobs charmed while in flee mode, so they will respond correctly to commands.
  • Inviting someone already in a group should now provide the appropriate feedback to the inviter that they are already grouped.
  • Added fixes for rooted mobs ghosting under certain conditions.

Torven

  • The resist curve in PvP now duplicates the non-linear curve discovered from PvP resist parses for resists 0-200.
  • The resist cap in PvP is now 196. This means that all-or-noting spells now have a 2% chance to land when the target has a resist value of 196 or greater. DD spells will land for about 1/3rd damage on average before the PvP reduction.
  • Spell damage in PvP now scales linearly from 91% at level 1 to a flat 62% at level 50+.
  • Melee and Archery damage is no longer reduced in PvP.

Database: Robregen

  • Correct the trivial for Chronium Plate combine
  • Raster of Guk should now spawn / despawn correctly.
  • Fixed the door object to require a key to the 7th floor for Tower of Frozen Shadow.
  • Dartain the Lost should now drop 2 items at a time.
  • Static mobs at ruins should now have high and low level skeletons and gorillas.
  • Sebilis Scarab in Brogg's room should now path around the left side to under the bridge.
  • fixed the z-axis zoning into swamp of no hope.
  • Sebilis Myconids should now have a chance to see invisible.
  • Glowing iksar skull have a chance to drop off of Helot Skeletons in Howling Stone.

Torven

  • highpass: Several NPCs involved with the Stanos Herkanor encounter have had their stats tuned.
  • southkarana: Brother Qwinn no longer immune to spells, but still highly resistant.
  • rathemtn: Brother Zephyl no longer immune to spells, but still highly resistant.

Script: Robregen

  • Added a missing reward for Merona's Brother in Surefall.
  • Correct the questsay for Lottery Ticket.
  • correct the door id for 6b to 7 floor teleport key for Tower of Frozen Shadow.

12-18-2017 (hotfix)

Code: Haynar

  • UCS Crash Fix for a stream closed by the client.
  • Added some sanity checks and reordered deletion of timed out entities in HateList::GetTop() to help prevent crashes.

12-16-2016 (Hotfix)

Code: Haynar

  • Fixed an issue with Universal Chat Service (UCS) allowing the stream to close before it is ready, causing a potential UCS crash.
  • Fixed a problem with UCS trying to close streams multiple times.
  • Fixed a timeout issue with UCS timeout checks that results in trying to close the stream again in the closed state, when the connection timed out. The issue was associated with not allowing the stream enough time to actually close and the timeout remained triggered leading to a race state in closing the connection.


Code: Cavedude

  • Harm Touch and Lay on Hands will now sync better between server and client.
  • More player timers are now cleared on death.
  • Implemented Spell Casting Reinforcement and Mastery AAs.
  • The server and client should now remain in sync when Mend is used and the player zones.
  • Changed the timer ability error to be a log, instead of a player message.
  • Suspended Minion will now restore suspended pets properly.

Haynar

  • UCS fixes to use a consistent method of stream interface deletions.
  • Netcode fixes - Changed how resend are flagged for packets.
  • Changed forced disconnect for desynced clients.
  • Fixed an issue with going LD, bugging groups in raids.

Torven Spell Partial Determination Logic Change

  • IsPartialCapableSpell() has been changed to return true if the spell's first effect is effect id 0 or 79 (damage), else it will return false. It will no longer return false if the spell has a duration. Dispel effects are no longer ignored. Dragon AoEs will still partial as their first effect is damage.
  • The result of this change is that certain raid boss spells will now use the 600 resist scale instead of the 200 scale, and will partial hit even if the spells have effects like stuns or AC debuffs. This fixes it to function as Sony's spells do.
  • Some player spells will now also hit better. Enchanter DDs will now partial hit. Druid magic DoTs and necro fire DoTs will now hit much better.

Database: Robregen

  • Chuckles the Great in plane of mischief should now corpse camp.
  • non humanoid illusion should now be KOS to the denizen of mischief and not be kos to KOS mischief NPC.
  • fixed the phantom weapon on siren seductress in Cobalt Scar.
  • fixed the trivial on Silver Jasper Ring combine.
  • fix MQ Dire Wolf Fur to not disappear if try to get a 2nd.
  • Guards in PoM should now drop crowns.
  • Crystal Scimitar, Crystal Hammer, and Great Sword of Bristlebane added and replace in various PoM recipe.

12-3-2016 (hotfix)

Code: Haynar

  • Added netcode fixes to prevent desyncs under some high traffic situations.
  • Rolling over arq responses in netcode should be more reliable.
  • Fixed an issue with packet resend code, so it will limit resend frequencies better. It was not actually limiting resends and was contributing to desyncs.
  • Fixed an uninitialized variable associated with arq response window.

12-2-2016 (hotfix)

Code: Cavedude

  • Fixed the issue causing /consent to only work for the last player consented.

Torven

  • workaround to prevent dangling pointer crash in GetTop()

11-30-2016

Code: Cavedude

  • Charmed pets will now be aggroed by NPCs that are KOS to their owner.
  • Simplified the logic in CheckWillAggro().
  • Removed rules Aggro:SmartAggroList, Aggro:IntAggroThreshold, and Aggro:UseLevelAggro as they are either obsolete or produce unnecessary code.
  • Group members while in a raid are now sent in the player profile like normal groups which prevents an incorrect message and allows us to send a much smaller group packet.
  • Raid group members will now receive the group leader update packet instead of the full group update packet when they enter a new zone.
  • Changed or removed some packets sent when a raid group member is added or removed. This will prevent duplicated or incorrect messages.
  • Added some messages when a raid group invite fails.
  • /consent can now be used whenever a new corpse is created to grant permission to the new corpse (or any others that are not already consented.) Using the command a second time when all available corpses are consented will revoke consent.
  • The consent list will no longer expire on a timer. Consent will now only be revoked using the command, looting a corpse, having a corpse poof, or on server resets.
  • Lay on Hands and Harm Touch are now excluded from the spell recovery timer.
  • Simplified the logic in CheckWillAggro() even more.
  • Summoned pets will now use their owner's resists and level when checking if they will resist a spell if the caster is a NPC. They will continue to use their own immunities.
  • The GetFaction() lua method now will return 0 if the player is max ally (+2000) with the given faction or 10 if they are max scowling (-2000.)
  • NPCs will now use light source items from their general inventory.
  • NPCs that are fleeing will now set a 7 second timer, and once that timer expires any feigned players (or players that feign after that point) will not receive XP or a faction hit. This is not exactly how Live works but it approximates the functionality, without changing our flee pathing code.
  • Players that feign before the NPC begins to flee are not affected by this, because they always avoid the faction hit anyway.
  • Changed corpses to use the same light source code as NPCs.
  • Fixed a spell buff desync that occurred when a player's buff bar is full and a detrimental buff is cast on them.
  • Corrected a spell buff desync that occurred due to incorrect stacking rules involving HP regen spells and DOTs.
  • DOT damage is now combined with the HP tick packet, to keep the client and server in sync better.
  • Fixed some logic that was causing DOTs to give an incorrect message and prevented the client from completing its death routine.
  • Corrected an issue causing the server to not always fade buffs by client request.

Haynar

  • Fixed an issue with the pathing node system, when a fleeing mob is snared to the stop, their heading changes. They should continue to face the pathing node they are heading towards, rather than rotate towards their final destination.

Database: Robregen

  • Reduced the spawntimer for Eldrig the Old / PH to 13 minites.
  • Spider Fur-lined Boots and Spider Fur gloves should now drops of hunters.
  • added a couple of missing Celestial Essence recipe as well as remove one. (Credit to Neea for putting it together from EQTrader)

Script: Robregen

  • added level check and requirement to all Pogrowth NPC quest. requirement is level 55.

11-23-2016

Code Cavedude

  • Hopefully fixed the crash caused by feigning in very specific circumstances.
  • Fixed the stacking issues between Visions of Grandeur (and like spells) and illusions.
  • Bard AE songs will again check for LoS on the pulse.
  • Mobs can no longer proc while silenced.

Haynar

  • UCS crash fix.
  • Changed packet throttling to fix desync issues.
  • Reduced number of HP update packets sent when damaging mobs.

Database avedude / Robregen

  • fixed funny money so it doesn't delete on second return.

11-16-2016 (hotfix) Code: Cavedude

  • Fixed the zone crash cause by an invalid pointer in the faction code. (Sorry about that!)

hotfix2 electric buggalo Code: Cavedude

  • Fixed the bug introduced causing non-ATK illusions to block ATK buffs.
  • Fixed the issue causing players who aren't on the hatelist to fail to receive part of the group XP split.


11-16-2016

Code: Cavedude

  • Hide is now treated like an invis and will use the see_invis column of npc_types. see_hide has been removed.
  • Whenever a Rogue is hidden or made invisible, they will also get invisibility vs undead. This means that any invis spell, ability or hide on a Rogue is now dependent on both see_invis and see_invis_undead in npc_types. A NPC will need to see through both in order to see the Rogue.
  • Added see_sneak, which allows NPCs to see through sneak if set.
  • The blur component of feign death no longer needs to succeed in order to prevent a faction hit.
  • Faction hits will occur if a player feigns while the NPC is already fleeing (not rooted.)
  • Renamed dot_memory_list to faction_memory_list as that name makes more sense for the list's purpose.
  • Players will no longer receive XP or count towards the split if they are feigned and in a group.
  • Corrected an issue causing the damage report to display twice.
  • The Depop spawn_condition will no longer start spawn timers.
  • Fixed a problem that caused freezing to death to be counted as an client initiated death instead of environmental (Only really matters for bookkeeping.)
  • Factions now have an overall cap of -2000/+2000. Players will no longer be able to go past either cap, even if their personal faction has not reached the cap for a given faction.
  • Corrected an issue causing illusions to not use a player's base mods when writing their faction to the database.
  • Removed spells_new columns that were either unimplemented in our current code or that were all one value in our table. Columns that exist in our spells_en.txt file were all kept, even if they did not have valid values.
  • Renamed all unknown columns using http://wiki.eqemulator.org/p?spell_effect_fields
  • Changed pushup and pushback columns to be a float.
  • Removed any code associated with the removed columns.
  • Removed all unused spell target types and their implementations.
  • Corrected the spell stacking desync that occurred when a upgraded beneficial ATK spell is cast over a beneficial illusion spell with an ATK component. (The ATK spell should be blocked by the illusion.)
  • The output of /pet health is now AKurate.
  • Expanded the see_illusion column under faction_list to affect normal non-base race illusions in addition to Treeform/Minor Illusion. This will cause any NPC on that faction to view the player as they have no illusion up at all. This column does not work on base race illusions!

Haynar

  • UCS Fixes
  • Included Dual Wield chance in the secondary weapon proc rate calculation to make it more accurate.
  • Increased Beastlord pet buff based proc rates to be correct.
  • Spell buff based procs will now only be possible on primary attacks. Some special attacks and secondary attacks were causing spell based procs incorrectly. This was happening for PC and NPC.

Database: Robregen

  • Adjust Frogloks of Guk faction to be more livelike (Credit to haynar with helping out with DE factions)
  • Adjust Mayong Mistmoore faction to be more livelike.
  • illusions except for player race illusion in Plane of Growth should no longer be useable.
  • illusions for Zlandicar faction should no longer be useable.
  • fixed faction id used for scalp of the ghoul lord.
  • Removed hail emote from Talin ODanal since it is already scripted.
  • Ambassador K'Ryn / Bouncer Gronk in Oggok should now spawn / despawn at the appropiate time.
  • removed Lock of Blessed Unicorn Hair from loottable and database.
  • removed Braided Horsehair Handbad from database.

Script: Robregen

  • re-enable crown of deceit quest for old froglok in upper guk.

11-3-2016 (hotfix) Database: Robregen

  • fixed the combat regen on Tukaarak_the_Warder in Sleeper
  • fixed an issue with wooly rhino horn where it was deleting a 2nd one.

Torven

reduced the aggro radii on various VP mobs.

11-2-2016

Code: Cavedude

  • Fixed the recently introduced issue causing NPCs to not immediately switch targets when a player leaves combat range.
  • Reduced the restrictions used to determine when a swimming skillup should occur.
  • Corrected the issues causing food and drink items to be out of sync with the client.
  • Split UpdateItemHP() into two methods to prevent spaghetti code.
  • The HP calculation when stamina is greater than 255 is now much closer to the client's values.
  • When runes are stacked, they will now use the effect slot to determine which one is used first, instead of buff slot. (Highest slot is used first.)
  • Fixed a few issues with Monster Summoning that could cause a pet to spawn with invalid appearance values leading to problems shrinking and other issues.
  • Normal damage shields bonuses will no longer stack with reverse (healing) damage shields. When a reverse damage shield fades, any normal damage shield still on the mob will continue to work again as normal. Damage shields of the same type will continue to stack, provided they passed the spell stacking rules.
  • A small number of merchants are now considered greedy and will sell items at a higher price and buy lower than other merchants.
  • Removed rule Merchant:UsePriceMod as it wasn't needed.
  • CalcPriceMod() will now only be called when needed once, instead of being called on every item.
  • Added command #setgreed to set a NPC's greed. #showstats will now display the greed value and percentage.
  • Added command #giveplayerfaction [factionid] [value] which gives the target player or self the specified number of faction points with the factionid. This acts exactly like a lua faction hit.
  • Faction hits that originated from Lua or command will no longer skip GMs with their flag up.
  • Added a check to prevent a duplicate lore item from being removed from a world container.
  • Rewrote most of NPC::Death(). Consolidated much of the logic, removed unused or unnecessary code, and improved the overall stability. Also added many comments for clarity.
  • NPCs level 55 and over will now grant XP and faction hits if there is at least one player on their hatelist in most cases.
  • Corrected a couple of cases where a pet could "steal" XP credit.
  • DoT damage done while feigned will now be remembered by NPCs and will result in faction hits and XP. (This damage will only be remembered upon death, it won't count towards normal hate.)
  • Added command #clearfeign to clear both the dot_memory and feign_memory lists on the target NPC.
  • Fixed an issue that could cause the total damage done by players to a NPC to go negative by mistake.
  • GMs will no longer need to have their flag up to see damage report totals on death, they simply need to be on the hatelist. Also added a message to it telling you if faction hits should occur or not.
  • Removed Combat:EXPFromDmgShield and NPC:EnableMeritBasedFaction rules.
  • Eye of Zomm will now always grant 1 point of XP, ignoring the server multiplier rules.
  • Client bonuses will no longer be calculated continuously when the caster has an Eye of Zomm up.
  • Adding new logsys category "Death" and changed logging in both NPC::Death() and Client::Death() to use it. Added additional logging to NPC::Death().
  • Corrected an issue that could cause environmental player deaths to be handled incorrectly and result in an incorrect message.
  • ONDEATH NPC emote will now work if there is no deathblow Mob.
  • Fixed an issue where a corpse is created, but no player is assigned loot rights.
  • Removed an unnecessary loop that occurred when the data to log player_npc_kill_log was being gathered.
  • Queryserv will now perform one query per group/raid when logging player_npc_kill_log, instead of one per player.
  • Added the type of death to player_killed_by_log and corrected the output to the killer name field when there was no killer.
  • Both of the above QueryServ categories will now take one less internal packet hop.
  • SameFactions() will now return false if one or both of the given factionIDs are 0.
  • Resurrection effects will no longer be faded when players zone with low health.
  • Added a couple more greedy vendors.

Haynar

  • Added a #randtest command to observe random number generation distributions.
  • Moved some additional client stream deletes for UCS out of the main Process loop.
  • UCS Crash fix.

Torven

  • Players that drop from hate lists via the 10 minute timer will now also drop from rampage lists.

Robregen

  • fix potential plat creation exploit (zerosum from eqemu)

Database Robregen

  • readjust faction hits on Debbis the fish in Plane of Mischief
  • All PoM pages should now have a even chance to drop.
  • Lower Guk undead frogloks should now only flee when alone.
  • CoV should now assist GoV faction mobs in ToV.

Torven

  • A significant change has been made to Veeshan's Peak. The zone is now flagged to disable LoS checks. Previously only the dragon spells were flagged No LoS, but as they are used in Velious content, they had to be reverted to their normal state. Veeshan's Peak on Live is a 'semi-LoS' zone-- meaning some walls block sight but most do not. TAKP currently lacks the capacity to create server side semi-LoS sight maps for zones, so it's either make every little bump in the geometry block sight/AoEs or none. The latter was chosen.
  • templeveeshan: Fixed the 'unslowable' drakes in NToV which had incorrect attack delays.
  • templeveeshan: Dagarn the Destroyer's ATK and AC increased.
  • templeveeshan: Aaryonar will now AoE more frequently.
  • fearplane: Cazic Thule's AC decreased, ATK increased slighty, and accuracy increased.

Script Robregen

  • fixed Tanik Greskil name variable in questsay in Eastern Wastes.
  • fixed Tanik Greskil appearance when spawn in Eastern Wastes..
  • readjust positive faction hit on Vinny turn in to match Debbis negative faction hits from death in Plane of Mischief.

Misc: Robregen

  • generate new map file for plane of mischief to exclude doors and bookshelf for LoS
  • generate new map file for sleeper to include objects.

10-26-2016 (hotfix)

Scripts: Robregen

  • fixed various velious armor chestplate turn in.
  • moved stormfeather script to encounter script.

Database: Robregen

  • WoW pages should now drop more commonly in plane of mischief.
  • kael armor pieces should now drop off NToV drakes.
  • hafling wizard in plane of mischief should no longer see invis.
  • fixed troll mercenary Hitpoints.

10-21-2016 (hotfix)

Code: Cavedude

  • Added method SameFactions() which compares two npc_faction_ids to determine if they are the same faction or not. It compares primary faction, and all faction hits (excluding primary) ignoring the hit values.
  • The invis assisting code has been changed to make use of this method to determine if the assisting NPC is the same faction as the NPC requesting help.

Haynar

  • Added using Mutex to the UCS Stream. Changed how stale UCS connections are removed, to prevent crashes.
  • The #zonestatus command will now shows the UCS connection status. When the UCS drops, a message will be sent to the clients, that connection to the chat service was dropped.
  • The #los command will now check both ways, from client to target, and target to the client.

10-19-2016

Code: Cavedude

  • Added some more race defines for clarity. Removed Froglok race from code.
  • Removed instance code.
  • Removed some unused code and database columns from doors and objects.
  • Renamed some unknown object columns to match their usage in our code.
  • Portal doors will now check if the player has died before transporting them.
  • Untargetable and Trap trigger NPCs will now be skipped when an AE is determining targets.
  • Attempting to /tar an untargetable NPC will now display "I don't see anyone by that name around here..."
  • Changed IsUnTargetable() to always return true for quest triggers.
  • NPCs that can't see the attacker due to invis will still assist if they are on the same faction (npc_faction_id) as the NPC requesting help. If the factionid is different, and they cannot see through the invis, they will not assist. This allows for situations were NPCs on the same primary faction may not assist each other due to invisibility if they are on different factionids. (Due to having different hits, or different assist behaviors.)
  • The above applies to all forms of invisibility, including VsUndead, VsAnimal, hide, and sneak.
  • Sneak will no longer break when a player attacks, or uses a ranged weapon.
  • Trader accounts are now locked in Bazaar. New characters will start in Bazaar and have bind set to the same. All zoning requests will be denied. If your character is currently not in Bazaar, they will automatically be moved when they log in.
  • Bazaar is now the default zone in case of a server error for all characters. (Previously it was either qeynos or arena.)
  • Trader accounts may now enter nexus and poknowledge in addition to bazaar.
  • Bard songs will no longer use spell level restriction rules.
  • Wizards can no longer Translocate themselves.
  • Items within a bag will now show in the trade window.
  • Fixed a zone crash due to a nullptr in DepopPet()
  • /consent will no longer work on corpses created after consent was given.
  • CombatRange() is now a virtual method. The definition for both NPC and Client are in roughly the same spot as the old Mob method was in aggro.cpp.
  • Under normal melee conditions, NPCs will now use their target's combat range in addition to their own to determine their position.
  • If the NPC is rooted or moving, it will only use its own combat range, meaning its position may be in a spot where it can hit you, but you can't hit it.

Torven

  • The melee push code will now readjust the NPC's center point if the point is too close to walls, which should make corner tanking much more reliable.
  • The collision 'cushion' size cap around NPCs reduced back down to 2.5.
  • The Archery nerf has been re-enabled.
  • Rogue evade changed to the following logic:

- hate amount = level * 10, capped at 500. (note the scaling is a guess and subject to change) - if Rogue is top hate and 3 or more haters on list then reduce hate to point between hater 2 and 3 if point would reduce by more than hate amount, else reduce by hate amount - rogue hate is not reduced below 1 point

  • Rogue evade was previously erroneously adding extra hate instead of subtracting hate on high hitpoint NPCs and has been corrected.
  • #hatelist is now sorted by entity hate in descending order, not including bonus hate.
  • #hatelist now displays entity classes and the rampage top 10 will also display entity distance to the NPC.
  • NPCs now also check feign memory while in combat instead of only while not in combat.

Haynar

  • Updated UCS mailkey to match captures from AK.
  • Added LoS fixes for large mobs and AEs.
  • Added keep alive packet sent to client in UCS netcode.
  • Increased timeout for getting disconnected for UCS.
  • Increased number of packets sent in client UDP netcode, before throttling occurs.
  • Pets will no longer try to attack Trap triggers.

Robregen

  • Readjust Client combat range to match closely to live.
  • Added NPC hitbox to match closely to live.

Database: Robregen

  • Increased Geonid Shamans Hitpoints in Wakening Land.
  • Added missing server reboot instant/variance to King Tormax, The Statue of Rallos Zek, Wuoshi, Lord Yelniak, Dain Frostreaver, Kelorek`Dar, and Velketor.
  • Added a missing Funny Money recipe involving Words of Wealth and Words of Wealth: Top Left.
  • Added missing Throne loots to 4th large wing to Glink and Glonk in Mischiefplane.
  • Removed Throne loots from Hedge plants in Mischiefplane
  • increase aggro range to Treasure Chest in the main hall.
  • fixed the spawn condition that was preventing Dain Frostreaver from spawning on a ring turn in.
  • black panthers in Wakening Land should sometime drop 2 pelts.

Torven

  • Nagafen and Vox now have a chance to drop more than 3 items.
  • wakening: Wuoshi now flees.
  • sirens: Walrus NPCs are now snarable.
  • kael: Statue of Rallos Zek respawn time is now 5 days.
  • veeshan: Xygoz now drops Robe of Invocation. Drop rate set at ~1%

Script: Robregen

  • Change faction requirement to indifferent for Gleed's Bow in Kael
  • Captain Berrigan should now fall to the ground when given the Tainted Avalanche Ale
  • Emotes in various area of Temple of Veeshan should now only emotes to clients.
  • Added a missing questsay to Sontalak in Western Wastes.

Misc: Robregen

  • Added a path file to Western Wastes.

10-10-2016 (hotfix)

Code: Cavedude

  • See Invis will now use normal stacking rules if the spell being cast is the same as the one already on the player.

10-5-2016

Code: Cavede

  • Changed default rule to 70 for NPC:SayPauseTimeInSec. Moving NPCs that have a lua script will now pause for 70 seconds when they are hailed.
  • NPCs will no longer assist if they cannot see the target due to invisibility.
  • NPCs will no longer aggro a target they remember after being feigned if the target is invisible to them.
  • Server and client should now agree on the range at which a player can…

… loot a corpse. Also a removed an incorrect server message that occurred if you were out of range to loot.

  • Bind Wound will no longer heal above 50% HP, without bonuses.
  • Moved the code that handles applying an illusion to a mob to its own method. It is called both when an illusion is cast on a mob, and when it is re-applied on zoning (Permanent Illusion AA.)
  • AA hotkeys will now be reset when an activated ability fails to finish its cast.
  • AA timers are now sent when an AA is purchased. This should prevent newly purchased hotkeys from being disabled.
  • Fixed an issue causing timers to not be sent for activated AAs with multiple ranks.
  • #cleartimers will now reset AA hotkeys, if AA timers are cleared.
  • Added some AA logging, and cleaned up some logging that was unnecessarily spamming the log.
  • mplemented 2 Hand Bash, Warcry, and Purge Poison AAs.
  • Held pets will now attack when told. (Pet Discipline AA.)
  • Unslowable special ability will no longer block haste spells.
  • Added two new special abilites NO_HASTE for haste immunity, and REVERSE_SLOW for the few NPCs that have the ability to turn a slow into a haste.
  • Level 55+ NPCs will now always leave corpses by default.
  • Corrected default rule for level 55+ corpse timer to be 30 minutes.
  • Cleaned up the slot code, and removed a few completely unused defines.
  • The client and server should now agree on See Invis stacking rules.
  • Spells and all Songs will now be grouped together in the buffs array for all mobs. This fixes three issues:

1. Songs will no longer be faded prematurely on zoning. 2. Zoning with songs will no longer cause spell buffs to change slots. 3. Dispel spells will now loop through spells and songs in the order they appear in the buff window. Torven

  • #hatelist will now display the top 10 rampage list entities.
  • Rampage should hopefully no longer bug out when rampage kills somebody.
  • Triple attack now ignores the database field and is hardcoded to be granted to level 60+ warriors and monks.

Database: Robregen

  • Snow Griffons in Eastern Wastes should now drop their eggs 25% of the time.
  • Sleeper's Key should now be soulbound and go on keyring once used.
  • Ancient Leather Gloves should now include BST as usable.
  • Geonid Names in Crystal Cavern should now drop higher end gems.
  • Invisible NPC in DN should no longer aggro and attack.
  • Sargasso Spear should now be droppable off of "a neriad mistress" in SG.
  • Zoning out of hole into Paineel should put you in the correct heading.
  • invisible NPC "pristine gate" in Plane of Mischief should no longer aggro and attack.

Torven

  • cobaltscar: NPC resist values set to parsed estimates.
  • cobaltscar: Drake aggro radius reduced.
  • sirens: Common NPC resist values set to parsed estimates.
  • sirens: All NPCs flagged immune to flee.
  • sirens: Unmezzable flags removed from common NPCs.
  • sirens: Animal and elemental NPCs are now immune to snare.
  • sirens: Shimmering sea spirit spawn chance reduced at two spawn points.
  • wakening: Several NPC types have had their resists set to parsed estimates.
  • necropolis: Common NPC resist values set to parsed estimates.
  • velketor: Kerdelb and Bledrek spawn chances reduced.
  • velketor: Velketor`s Experiment MR reduced, damage reduced, and rampage rate increased.
  • velketor: Failed Experiment MR redcued.

Script: Robregen

  • Crystalline Silk Thread should now drop in Sets of 2,3,or 4.
  • Enabled MQ for Hasten Bootstrutter's JB script.
  • Poxbreath Yellowfang for Coldain Ring 6 should now aggro and assist with the Oracles.
  • Poxbreath Yellowfang should no longer poof if Players have the killshot.

9-30-2016

Code: Cavedude

  • Translocate will now properly move players when they are bound in the zone they are currently in.
  • Shadow Step type spells will no longer move pets.
  • Changed Shadow Step so charmed pets will be affected if the last *movement* command they received was not guard.

Database: Robregen

  • Added a missing NPC "Velketor's Experiment" in Velketor.
  • King Tormax's Guards should now see invisible

Cavedude

  • fixed bind areas in Kael

Script Robregen

  • Change faction requirement to amiable for King Tormax head turn in to Lord Yelniak.

9-28-2016 (hotfix)

Code: Cavedude

  • Fixed new crash in sirens uncovered by fixing the first

9-28-2016

Code: Cavedude

  • Removed the code that was changing NPC corpse timers.
  • Fixed an issue that would cause traps to not function correctly if skill is 0 in the database.
  • Added undetectable column, to allow content developers to make a trap undetectable and not able to be disarmed.
  • Pets will no longer try to aggro traps its owner triggers.
  • Traps will now use the radius column to determine disarm range, instead of using a hardcoded value which may not be appropriate in all cases.
  • Decreased the scan range for traps to disarm.
  • Permarooted NPCs will now use normal aggro rules, instead of the rules used by rooted/blind NPCs.
  • Form of the Great Bear will now turn Barbarians in polar bears, and Trolls in black bears.
  • Using /consent a second time will now revoke consent from the target player.
  • Fixed the crash in sirens caused by underwater NPCs attempting to set a dead mob as top hate.
  • Underwater-only NPCs will no longer flee.
  • Fixed a possible crash caused by recent trap code.

Haynar

  • Netcode updates to help with desyncs.
  • quest::follow will now use pathing nodes when available.
  • Pathing improvements to help keep mobs on their path, when the destination changes.
  • Fixed an issue where nodes were not culled from route end points when they should.

Torven

  • The archery nerf has been temporarily disabled until I can get it working better.
  • Melee push/geometry collision NPC 'cushion' size cap increased to 5. This should make corner tanking more possible.
  • A full-wipe feign death will now remove the player from rampage lists.
  • NPC Rampage now facilitates filling 'holes' in the list. Players who remove themselves from the list (dying, zoning, FD) will leave holes that will be filled by newly added players.

Database: Robregen

  • Character's Rallos Zek Deity starting faction should no longer be KOS with Kromrif and Kromzek.
  • Dain Frostreave should now be dubious to all at starting faction.
  • Adjust spawntimers to Various NPC in Western Wastes.
  • Add a missing Fire Giant in Soldungb
  • Traps in Necropolis has been reworked.
  • Removed charm immunity from Yvolcarn in Cobalt Scar
  • Fixed the recipe for Arctic Wyvern Tunic
  • removed the trivials for Purified Water involving using water extractor container.
  • Change Ekelng Faction to kos with no faction hits.
  • City of Thurgadin and Icewell is no longer an outdoor zone.
  • Icewell can no longer be bindable.
  • Adjust head loot chance for Royal Scribe Kaavin and Grand Huntsman Darral in Icewell.
  • Change spawntimer to 6 hours for both Royal Scribe Kaavin and Grand Huntsman Darrel in Icewell.
  • Crystalline Silk Swatch should no longer fail at combine.
  • The Majority of NPCs in Velketor's Labyrinth should now assist each other if close in range.
  • Petra Coldbeard should now drop the quest piece for Reinforcements for the Tunarean Regiment.
  • Bloodmaw in Great Divide should now aggro within radius.
  • Othmir in Cobalt Scar should now be indifferent to all at starting faction.

Torven

  • greatdivide: Bloodmaw's ATK and accuracy increased, health regeneration reduced, and respawn time increased to several hours.
  • westwastes: Harla Dar's statistics were neglected and have been updated.
  • westwastes: Harla Dar's respawn timer changed to 3 days +/-12 hours with a 0-24 hour boot variance.
  • westwastes: The majority of NPCs in Western Wastes have had their resistances adjusted to parsed estimates, and some missing innate procs have been added to a handful of dragons.
  • velketor: The majority of NPCs in Velketor's Labyrinth have had their resistances adjusted to parsed estimates, along with some minor adjustments to aggro radii.
  • kael: Derakor no longer loiters.
  • kael: The Statue of Rallos Zek is now snarable.

Cavedude

  • The raft from oasis to timorous should now be more reliable.

Script: Robregen

  • fixed a typo in Wenglawks Kheak questsay.
  • a sentinel's voice should now only send messages to client rather than as an emote.
  • Stormfeather in Iceclad has a chance to skips spawn.
  • change faction requirement to warmly for turning in Tormax head to Lord Yelniak.
  • reduced the despawn timer to 5 minutes for Death Squads in Eastern Wastes.
  • fixed the depop function relating to Plate Cycle Event in Kael.


9-21-2016 (hotfix)Code: Torven

  • rampage fix

Database: Robregen

  • Sirens in Cobalt Scar should no longer see invisible. fifth times the charm?

Code: Cavedude

  • Fixed players not using their weapon to damage magical NPCs.

9-21-2016 Scar of Velious is now live

Code: Cavedude

  • Corpse camper special ability now accepts a value to tell a NPC to pause after losing aggro. Value is in seconds. A value of 1 tells the NPC to permanently wait at the spot where it lost aggro, until it is aggroed again.
  • Poisons will now be treated as expendable and will be deleted once their charges reach 0.
  • NPCs will now equip earrings, rings, and bracers again. (This was broken in my last loot commit.)
  • NPC Corpse shouts will now be in default text instead of red.
  • Corpse Camper special ability now supports a range for the pause time.
  • Changed our faction values to match what Rob has observed on Live. The findings also match several reports on the internet closer then our previous values did.
  • The caps have not changed, so the total amount of faction needed to go from max scowls to max ally has not changed. However, the ranges of most factions has changed. Players may see their faction changed due to the new ranges (up or down.)
  • Added a cap to non-Guide Alliance type spells.
  • An error message will now display if Alliance can not land on a NPC due to not having faction in the database.
  • Added column never_idle to zone, to prevent a zone from idling when there are no players in it. We previous were hardcoding boat and nexus zones, but they are now handled by the database column.
  • Teleport doors in veeshan will now work properly.
  • Corrected Giant and Dragon Bane spells to use the correct target bodytype.
  • Added the ability to repop a single NPC. The functionality of #repop has been changed so that if a NPC is targeted, only they will be repopped. Otherwise, the whole zone will be as normal.
  • Exported ForceRepop to lua, in the NPC class. It can be used to repop the current NPC (e.self:ForceRepop()) or another NPC.
  • NPCs that control a proximity say will now be reloaded after the zone has finished loading everything else. Hopefully, this fixes the issue that sometimes causes proximity say to not work until a #repop is done.
  • In addition to the above, a new command has been added #reloadproxsay that will reload any proximity say NPCs in the current zone. It has also been exported to lua, using eq.reloadproxsaynpcs().
  • NPCs level 10 and higher are now hardcoded to have magic attack.

Haynar

  • Pathing Fixes for getting stuck in loops.
  • Increased the max limit of arq resends, matching what the client will not discard.
  • Ack's too far behind will now be automatically purged from the Send Queue.

Torven

  • The ExtraAttackOptions struct that was passed to Attack() and used by special attacks (rampage, flurry, wild ramp) has been removed and replaced with a simple damage percent paramater. The struct was merely a collection of redundant damage modifying variables that did not exist on AK. (e.g. armor penetration, criticals for NPCs)
  • Attack() parameters 'FromRiposte' 'IsStrikethrough' 'IsFromSpell' removed as they were not used.
  • Rampage now has a maximum range, beyond which targets are not rampable. The default range is 75.
  • Rampage paramters read in from the database have changed. The new paramters are: chance per round, range, and damage percent. E.g. if you wanted an NPC to rampage 35% of the time, with a limit of 150 range, at 50% damage: 3,1,35,150,50
  • Rampage will now class attack (bash, backstab) the ramp target 50% of the time instead of 100%. This was a sort of middle ground as Sony's logic to determine whether ramps should class attack is unknown.
  • Several special attack related rules removed as they did not apply to AK and frankly made little sense.
  • default wild ramp targets
  • Corrected an issue where glancing push vectors would have incorrect magnitudes.
  • The 'cushion' size around NPCs that prevents their centerpoints from hitting walls has been capped at 2.5. This means that larger NPCs will go into walls more than they used to. Shrink on medium to large races will generally be required to corner tank large NPCs now.
  • Archery will no longer hit cornered NPCs.
  • 15k HP flee cap

Database: Robregen

  • Equestrielle_the_Corrupted made a return to lesser faydark.
  • Fixed the appearance for Iron Cudgel of the Clairvoyant
  • Added a missing recipe for Purified Water with Sop Bark as component
  • fixed the correct spawntimer for one of the 78 sec named in South Karana
  • Zoning into Paineel from the Hole should put you the correct location.
  • removed a LoY era spell from Druid spellset.
  • shadowed man necro and cleric would very rarely have a weapon in their loottable. Cleric would appear to hold an orb even if it's not equipped and Necro would appear to hold a book.
  • Warrior type shadowed man with 2 hand weapon won't appear to be equipped.
  • Warrior type shadowed man with 1 hand weapon will always appear and equipped with 2 weapons.
  • Shadowed Man lootable has been redone.
  • Felwithe guards will now always equipped a 2h sword. Fine weapon will no longer be appeared to be equipped if it's in their loottable.
  • Neriak guards will now always equipped a long sword / fine steel stave and a shield. Other fine steel will no longer appear to be equipped if it's in their lootable.
  • Added a missing weapon tables to Hill Giants in Rathe Mountain.
  • Added pathing for Mojax Hikspin and Duggin Scumper in West Commonlands.

Cavedude

  • Most NPCs that equip weapons will no longer display "phantom" items. Any NPCs that still display phantom items either do so on purpose, have no loot, or have no equippable loot in the database.

Script: Robregen

  • added missing dialog for Paladin Message.
  • Fixed various dialongs involving Iron Cudgel 1 and 2.
  • Maligar should now depop and spawn the Doppleganger instead of spawning it to assist.

9-7-2016

Code: Cavedude

  • Horses will no longer despawn when #repop is used. (Idea taken from EQEmu, but rewritten for our code.)
  • Implemented force_z column in spawn2 which forces any NPC attached to that spawnpoint to use the Z coord specified in the database, instead of using BestZ.
  • Rewrote CalcPriceMod() to be easier to understand.
  • Group invites are now always cleared when a player accepts the invite. This should hopefully prevent players from getting bugged when they accept an invite, and the group is already full.
  • Added some logging, messages, and did some minor cleanups on the associated group code.
  • Implemented NPC corpse camping, set by special ability in the database.
  • Corrected some cases where a NPC will incorrectly equip a second item.
  • Monk discs such as Thunderkick will no longer be faded on a missed attack.
  • World:AdjustRespawnTimes now defaults to false.

Haynar

  • Added UCS fixes for character list sent to client. Deleted characters will no longer be send in the list.
  • Added multiple session attempt code from EQEmu to netcode for UCS.
  • Added Opcode for sending client to log out of the worldserver, OP_LogoutWorld. This help /camp desktop be more consistent. This requires patch_Mac.conf updated in working directory of server.
  • Added a pathing fix, so the route clears when the destination changes.
  • The MoveTo command for quests should follow path nodes, when available.

Torven

  • NPCs were procing wielded weapons way more than intended and have been corrected.
  • NPCs will now proc offhand weapons.
  • Procs from spell buffs will no longer proc in the same round as a wielded weapon's proc.
  • Spell procs will no longer trigger when holding non-weapons.
  • Rampage targets will now be bashed/backstabbed.

Robregen

  • Fixed so mobs that depop at end of pathgrid still path and depop while zones are empty. This makes these mobs no longer always appear at start locations for the 1st person in a zone after long idle. (Credit to Noudess)

Database Robregen

  • Bristlebane and Agnostic Gnomes should no longer be kos to Overthere
  • Fixed various GFaydark ground spawns location and spawntimers.
  • Should now be able to vendor Painell Steel Vambraces.
  • The following starting area have had their spawntimer reduced: Field of Bone, Qeynos, Freeport, Paineel, and GFaydark.
  • Inny Trolls should no longer be KOS to "The Dead" in Neriak.
  • redo loots for Sentinels in Eruden.

Torven

  • Lord Nagafen, Lady Vox, Goreinare, Talendor, Severilous ATK increased, accuracy reduced, and AC reduced to more accurately match parsed values.

Scripts Robregen

  • Disabled MQ for Explorer Knives in LoIO
  • Add faction checks for the Bonethunder Staff quest.
  • removed wrong item from the reward list for General_Jyleel.lua
  • change Cazic Thule call zone to assist to move to the initial aggro location rather than follow to.
  • Golems and Draco will now be summoned to CT when called for assist.
  • add a function addtohatelist to the Druid's epic trigger spawn for faydedar .

Misc Haynar

  • Added pathing to Spectre area of feerott.

8-24-2016

Code: Cavedude

  • Added boot_variance column to spawn2.
  • Bard clicky songs will no longer attempt to pulse.
  • Fixed the crash caused by casting Bind Sight on a corpse.
  • Coin will now be properly updated when /split is used and the server is unable to successfully complete the split.
  • Large race NPCs will now open doors as they walk through them.
  • Eye of Zomm will now be faded when an Succor type spell is cast on a player to avoid ending up at invalid coords.
  • The server will now calculate the SeeInvis worn effect bonus properly.
  • The range values when checking if a NPC should open a door or not are now rules, so they can be tweaked on the fly if needed.
  • Numerous fixes to keep linked doors in sync with each other when one is opened or closed.

(close_time specifies how long a door will stay open for before it is closed server side. This allows us to control the time on each door, instead of hardcoding values in the code. Setting the column to 0 keeps the door open until is is closed by a player or NPC. (The PoK elevator uses this.) This column is also useful to keep a set of linked doors in sync when they have two different client side close timers. KELSEYDOOR and KELSEYDOOR2 in sleeper is an example of this.) (Added can_open to doors, which specifies if the door is usable or is just a zone object (crate, tent, torch, etc.) This prevents NPCs from trying to open these objects, and will also return on a player click instead of trying to work with the door. I've populated this column the best I could, however there may be errors and I am sure omissions. (There is no way to tell if a door is a real door or an object in many cases without going in-game and looking.) If players are unable to open a specific door after this patch, please post in database bugs.) Haynar

  • Added support for dragging corpses to cause aggro in certain Velious zones.
  • Increased the max amount of nodes culled, when determining a path, to improve pathing route calculations.
  • Improved "/camp desktop" to more consistently allow the client to completely exit.
  • The command /pet attack [mobname] will have similar restrictions comparted to /target [mobname]. The command will no longer have unlimited range, allowing it to function like a ghetto form of tracking.
  • Set the max range to 350 for /pet attack command.

Torven

  • NPCs above level 60 now have slightly less ATK.
  • The Taunt skill will now add +10 hate on success above the top hater if the taunter does not have the most hate before or after bonuses. This allows the taunter to overcome the minor first-to-aggro bonus after 4 successful taunts.
  • The random 0-4 second recast variance for NPC spells was not being applied as intended and has been fixed. This means raid boss AoE recast times are now an average of 2 seconds longer.
  • Spell hate on belly caster NPCs maybe possibly hopefully fixed.

Robregen

  • Fix memset in QuestReward (credit to Demonstar)
  • use std::abs in Map::FindClosestZ (credit to Demonstar)
  • Fix potential crash in zonelist (credit to Demonstar)

8-16-2016 (hotfix)

Code: Cavedude

  • Fixed the crash caused by casting Bind Sight on a corpse.

8-10-2016

hotfix: Cavedude

  • Fixed broken damage spells. Whoops.

Code: Cavedude

  • Changed some size related columns to be the same as what Al'Kabor sent in the ZoneEntry and PlayerProfile packets.
  • Going unconscious should work better.
  • Flee will now be paused when a NPC is charmed, and it's also checked for in ProcessFlee()
  • Added a check if flee is paused for an unknown reason to manually recalculate a new path, as the likely explanation is a node could not be found.
  • Added HP regen while unconscious and hungry.
  • Added alive/unconscious/dead state to #showstats for clients.
  • Removed all references to NPCTypedata_ours as it was created, and never accessed.
  • Removed all spell effects and associated code (spell variables, spell bonus variables, timers, focus defines, etc) that we will never use and are not found anywhere in our database.
  • Corrected a missing break that was causing the fade message to not always occur when an invisible spell faded early.
  • Skin of the Shadow is now a fixed invisible spell.
  • Right clicking a charged item on a bazaar trader will now properly display the item's current number of charges.
  • Discipline timer groups are now set by a rule, which defaults to disabled. All discs will now share the same reuse timer.
  • Bind Sight will now longer cause beneficial aggro.
  • Changed logging a bit to try to track down the cause of the "did not take hold" bug.
  • Removed Perl and associated files.
  • Fixed healing spells that were broken in the spell cleanup commit.
  • Corrected a specific situation where temporary items were not being deleted from merchants properly.
  • Bard beneficial songs will now always overwrite songs of the same type, regardless of level, modifiers, or spell. This includes Shauri`s Sonorous Clouding, which is the sole exception to invisibility stacking.
  • Corrected an issue causing Bards to stop pulsing if another Bard is pulsing the same song nearby.
  • Skills that skillup on green cons will now only skillup if the mob is 1 level away from light blue. (This needs more research to determine if it should be a global rule, and affect things like XP as well.)
  • Correction to last commit. When a NPC is one level below light blue, its con message is slightly different than a normal green. This http://i.imgur.com/ED2YKYG.png screenshot provided by surron suggests that NPCs with a normal green con message could produce Offense skillups using a DS on AK. So, I increased the calculation to allow skillups from NPCs 2 levels away from light blue in this particular situation.

Database: Robregen

  • The Skyfire door/Wall click to Veeshan Peak should now display correctly.
  • All Dragons in Veeshan Peak will now instantly spawn at the schedule server reset/patch day.
  • The Female Coerced Erudite in Dalnir should no longer carry a phantom weapon.
  • The Door behind Master Yael in the Hole is now permenently Locked.
  • Add more diverse to Unrest.

// * Removed Perl and associated files. :evilgrin:

7-21-2016 (hotfix)

Code: Cavedude

  • Revert "Removed mod_functions.cpp and the associated calls."

7-19-2016 (hotfix)

Code: Cavedude

  • Revert "Charm should now break as soon as the owner zones, to prevent kill steals by the former pet and possibly faction wars." -- an attempt to fix an elusive crash.

7-17-2106 (hotfix) The year is 2106 and cavedude still needs beer

Code: Cavedude

  • Removed all references to NPCTypedata_ours as it was created, and never accessed. It was causing a zone crash when deleted in the NPC destructor, so hopefully that will be fixed.

Script: Robregen

  • Fixed the "Cure for Lempeck Hargrin" quest where it was not giving reward.

7-13-2016

Code: Cavedude

  • Treeform will no longer be faded immediately after casting.
  • Expendable and potion items will no longer have a level restriction to use.
  • Elevator/Lift type doors will now function without requiring multiple clicks.
  • Beneficial spells will no longer break sneak and hide.
  • Damage Shields will activate on hits where the damage is completely absorbed by a rune.
  • Gating within the same zone will no longer cause you to lose your pet.
  • Groups spells with TGB on will now target the caster if the original target is out of range, or is not a client.
  • Implemented OP_CancelSneakHide.
  • /guildstatus will now work on yourself.
  • Cleaned up the /split handle some, and added the correct messages.
  • Gravity Flux type spells will now work properly.
  • Gravity Flux will no longer send an extra action packet.
  • Fixed an issue causing expendable items to have 0 cast time.
  • Shrink spells will now be capped at Gnome height. Growth spells will be capped at Ogre height.
  • Shrink will now require the correct number of casts to get to minimum size.
  • Shrink will no longer affect entities size 20 or higher.
  • NPCs on roamboxes or grids with no delay on the first waypoint will no longer pause before starting to path.
  • Corrected an issue causing Minor Illusion and Treeform to not show up correct for new players in the zone.
  • Corrected the chance of Feign Death spells with a base value of 1 in the database.
  • Removed mod_functions.cpp and the associated calls.
  • Fixed aggro which was broken by the mod removal.
  • Fixed an issue causing an old group member to rejoin the group after zoning.
  • Accepting a group invite after the group is already full will no longer prevent the client from joining another group.
  • Speaking in a language will now be sent to group members in other zones.
  • Mobs that were blinded were being included in every use of IsFeared() which was bad. Blinded mobs can still cast spells when in melee range. The original fear code had no blind rolled into it, I added that. This was an overright. I changed the macro to use bonues and fleemode instead of looking at curfp. Testing looks good to me. (cherry picked From EQEmu credit to Paul Coene)
  • SE_IllusionPersistence affects self only (Cherry picked from EQEmu - Credit to Demonstar)
  • Fix illusions on zone (Cherry picked from EQEmu - Credit to Demonstar)
  • Fixed a zone crash in AE spell logging.
  • Invisible spells will no longer flash when they fade early.
  • Bind Sight will now be faded when an illusion fades.
  • When a player death occurs during a trade, any items in that player's trade queue will now directly go to the corpse to prevent item loss.
  • Increased the default decay time for items dropped to the ground due to being full to 6 hours.
  • Client initiated deaths will no longer generate duplicated messages.
  • Removing an item that has more HP than your base max will no longer kill you, assuming the difference between your current HP and your max HP with the item wasn't more than your total HP without it. (Eg: You have 32 HP, you equip an item with 50 HP, making your total 82 HP. If you get hit for 35 HP and remove the item, you will die/go unconscious because 35 is greater than 32. However, if you are only hit for 31 and you take it off, you will survive with 1 HP left.)
  • Fixed some potential zone crashes and altered some logging for trading.
  • Players that die during a trade who do not leave a corpse will now cancel the trade before the death packet creation. This ensures the trade queue items are returned to the player, or dropped to the ground properly if the player has become "full" due to shifting items around. (This is mainly an issue with bags, since normal items will just go to your first open slot.)
  • The client will now handle death due to a DOT tic, this will prevent double messages.
  • The client will now also handle deaths caused by damaging yourself.
  • Changed the logic regarding death to a DOT to accomodate NPCs.

Haynar

  • Updated z_offset calcs for fixed size races.

Torven [Tradeskill combine and skill-up code redone]

  • TradeskillExecute() and CheckIncreaseTradeskill() cleaned up for accuracy and readability.
  • Mastery AAs for tradeskills other than Jewelcrafting and Alchemy removed. (Poison Mastery not yet implemented)
  • The tradeskill combine fail chance reduction beyond the last 5% has been removed, as it was a July 2003 addition. All combines now have a 5% minimum chance to fail regardless of crafter skill.
  • The 5% minimum chance to fail is now applied after mastery AAs are considered.
  • Added the increased chance of a skillup for tradeskills when skill <= 15.

Database: Robregen

  • Removed Emerald Orange from the Sebilis Forage Table.
  • Added Ring of Scale faction hits to Elven Dancers in VP.
  • Set the respawntimer for a presence in PoSky to 2 hours.
  • Cyndreela will no longer hold a phantom weapon.
  • Set outdoor Dragons size to 6 from 1.
  • Duennan Shielding Ring should now be rechargeable using the box of the void and class 5 mana battery in Plane of Sky.
  • Yendar Starpyre will now summons.
  • Forpar Fizfla will now summons.
  • Forpar Fizfla will now be located inside a windmill in Steamfont.
  • The Wizard, Cleric, and Mage temp pet should now generate the correct combat message.
  • Troopers and Crusaders should now be more resistant to magic.
  • Warlord Zyzz magic resistant is lowered.
  • replace the roambox in Plane of Fear with grids to help eleviate mobs from falling below the world.
  • reduced respawntimer for trash roaming mobs in Emerald Jungle.

Cavedude

  • fixed the Armoire doors in Temple of Sol Ro.

7-6-2016 (hotfix)

Code: Cavedude

  • Fixed a zone crash caused by Begging without a valid target.

6-30-2016 (hotfix)

Code: Cavedude

  • Treeform will no longer be faded immediately after casting.
  • Support code to prevent charmed NPCs from eating multiquest items.

6-29-2016 they had an npc that straight up summoned gold this is fine!

Code: Cavedude

  • Added message for disarm success.
  • Updated the Bard stacking rules to correctly handle movement speed buffs and debuffs.
  • "You cannot see your target." when casting a spell will no longer generate interrupted messages for players around the caster.
  • Sacrifice and DOTs will now produce the proper messages on death.
  • Rewrote Beg to no longer cause a client desync.
  • Changed the chance for a NPC to attack while begging and the coin type and amount on success to be based on the player's beg skill.
  • Coin on beg successes will now be removed from the NPC's loot, instead of being summoned.
  • Fixed an issue causing controllable row boats to not update their position properly.
  • Bard pulses will now always do a resist check.
  • Renamed ResistSpell() to CheckResistSpell() to make its function more clear.
  • Consolidated the code that handles successful resists to ResistSpell().
  • Changed AE spells with a target limit to default to 5 targets allowed. Damage spells are limited to 4, with the exception of the Al'Kabor line of spells.
  • AE Mez spells will now have a target limit.
  • Corrected an issue where the target would not count towards the limit for certain AE spells.
  • Casting a Mez spell on yourself will bypass the level cap check. You still have a chance to resist the spell.
  • Bard pulses will now be cancelled while on a boat.
  • The Stun, Charm, Pacify, and Mez family of spells will now only enforce the spell level limit when the caster is a player and the target is a NPC. Every other combination will not use a level limit.
  • Removed the rule Spells:NPCIgnoreBaseImmunity as it only served to create confusing logic.
  • Corrected an issue where Mez spells would sometimes be considered beneficial.
  • Prevented an unlikely situation where Harmony spells could use the wrong target to perform its casting checks.
  • Added a caster check to prevent a redundant spell resist message.
  • Spells will now set a recovery timer upon successful completion of a cast. This timer will be checked after a spell completes the casting phase. If the timer is not yet expired, the new spell will be interrupted.
  • Removed the 400 millisecond delay when using clickies with a cast time. Clickies are also exempt from the recovery timer.
  • Added a rule Spells:SpellRecoveryTimer to control how long the recovery timer is. It defaults to 2500 milliseconds.
  • When any Alliance type spell is cast, any faction bonuses caused by a previous cast will be removed.
  • All players in a zone will now receive door open packets by NPCs for the benefit of Eye of Zomm.
  • Fixed a spell slot desync issue that happened with specific buffs.
  • Treeform will now be faded server side when a player movement update is recieved. This is a workaround for the issue allowing Treeform to stick anywhere server side due to a lack of tree data in our map files.
  • Corrected the spell stacking rules regarding illusion spells.
  • Wolf Form spells will now use the correct texture.
  • Bind Wound will no longer force the target to stand.
  • Corrected the Bind Wound messages.
  • Corrected an issue causing the max heal percentage of Bind Wound to not be calculated correctly.
  • Added combat messages for Thunderkick, Silentfist, and Ashenhand disciplines.
  • Fixed an overflow found in the Monk disc reuse timers. Monks who were affected by this will see their discipline reuse timers drop considerably, so be sure to check.
  • Lowered the chance that spin stuns can break early. (This excludes Whirl till you hurl and Dyn`s Dizzying Draught - they remain broken.)
  • Charm should now break as soon as the owner zones, to prevent kill steals by the former pet and possibly faction wars.
  • Rez will now fade charm on your pet. The hatelist is cleared after the charm is faded, so the former pet will not have aggro.
  • Beneficial and Detrimental single target spells no longer use the Z coord in the server's range check.
  • Casting on a target who is standing on "ice" or "slime" and the caster is in a normal region or vice versa will now work properly.
  • Added NPC Special Ability to always leave a corpse if the deathblow was dealt by a client or a client's pet.
  • Added support code required for charmed NPCs with lua scripts to accept and equip items they do not require in their trade event.
  • NPCs will now use the correct damage messages after being disarmed.
  • Consolidated breaking sneak and hide to a single method. Replaced most of the raw packet creation for both with SendApperancePacket().
  • Sneak/Hide will now break properly when casting a spell, when a spell lands on a player, when a player resists a spell, when attacking, when attacked, and when an old world trap is clicked and the player either lacks the disarm skill, or the disarm attempt fails. (Many of these were already working, I just confirmed them.)
  • Resting a spell or being missed by a combat swing will cause the sneak button to "bug" if the player is not also hidden. The player will need to click the button to reset it. This quirk occurred on AK.
  • Fixed an issue causing the hide packet to not be sent out correctly for racial hide on failures.
  • Corrected an issue causing Sneak to sometimes incorrectly cancel hide, and to send out an invisible appearance packet instead of a sneak packet (copy/paste error?)
  • Rewrote Sense Traps to support old world traps (swinging axe, falling ceiling, etc) and to provide accurate messages.
  • Old world traps can now be disarmed by clicking on them, if you have the trap disarm skill.
  • Added more logging for sneak, hide, and traps.
  • Removed the cooldown timer that occurs when clickies are used.
  • Removed support of the RecastDelay item database column since no clicky item in the DB uses it. Also removed pTimerItemStart which is the associated timer.
  • Tradeskill skillups will now use the difficulty value from the database instead of the hardcoded values. (No values have been changed!)
  • At skill 190, the chance to succeed on a tradeskill skillup will correctly be 5%, instead of 5.99%.
  • Removed rule Skills:TradeskillSkillUpModifier. Difficulty can be changed per skill in the DB now.
  • Increased the difficulty cap for normal skillups to accommodate begging.
  • Bard pulses will no longer check for line of sight.
  • Skills that allow skillups from green cons (offense on damage shields) will no longer allow skillups if the NPC is green and level 18 or under.

Haynar

  • Bard instrument modifiers associated with buffs will now carry when zoning
  • Added code support for zoning out of airplane, to replace the zoner script. (This should fixed the issue with the occasional death when jumping off the islands.)
  • Fixed an issue with zoning that drops you to server select, under certain conditions.
  • Very high snares will no longer make running mobs stop. Walking or fleeing (feared) mobs can still be stopped by high snares.

Database Robregen

  • Added a missing groundspawn "Abandoned Orc Shovel" in lake rathe
  • Putrid Skeletons should now cast Putrid breath
  • The Spectre in Feerrott will now see ivu
  • decaying initiate / decaying councilman should be more common in Nektulos.
  • a spirit of flame (cleric epic) should now leave a corpse if it recieve a death blow from the player.
  • removed roambox and add grids to named cycle in Frontier Mountain.
  • Named Cycle in Frontier Mountain should now instantly respawn
  • Hangnail in Karnor Castle should now give a negative faction hit with Venril Sathir.
  • adjust the following tradeskill:

-- Jewelcrafting, Fletching to 4 -- Baking, Brewing to 3 -- Tailoring, Smithing to 2

6-17-2016 (hotfix)

Code: Cavedude

  • Changed the random location adjustment that happens when a port or spell is used to get its value from the random_loc column of the zone table. This allows us to disable it per zone (set to 0) or make the value bigger smaller as needed (default is -/+ 3)
  • Player location will no longer be adjusted for intrazone moves.
  • Fixed an issue that caused doors to save the adjusted coordinates the last player used, instead of rolling with the door's default coordinates.

6-15-2016 (hotfix)

Code: Cavedude

  • Fixed a zone crash that happens when a player is damaged and there is no attacker.

6-15-2016

Code: Cavedude

  • Eye of Zomm will no longer force the caster to stand after it has faded.
  • Eye of Zomm will now swim at a painfully slow rate.
  • Corpses will now sink to the bottom in water.
  • Fixed an issue that sometimes caused corpses to end up in the wrong location when they fell off a boat.
  • Rewrote /camp to fix an issue causing the player to leave their group when the camp is abandonded.
  • Removed the "soandso has left the zone" message players recieved when a group member zoned.
  • Moved a log message when a player leaves the group to a better spot to avoid spam and confusion.
  • Added accountid column to group_id. This is for the benefit of world so it can remove a member of a group after the client's variables are cleared.
  • Changed success in CheckIncreaseSkill() to use uint8, and added an enum for SKILLUP_SUCCESS and SKILLUP_FAILURE to make it less confusing and easier to read.
  • Damage and death packets will now be sent in the correct order. This corrects some invalid messages including most pain and suffering messages.
  • When death occurs on a combat swing, the final damage packet will no longer be sent. The death packet will handle the final damage message(s).
  • Consolidated the death packet creation code to a single method.
  • Environmental deaths (falling, drowning, etc.) will no longer produce the pain and suffering message and will now generate the proper message for the type of death endured.
  • Added comments, logging, and performed a general cleanup of the damage code, particularly when a death is involved.
  • Damage shields should now bypass runes.
  • Non-melee damage messages will no longer filter under Damage Shields.
  • Divine Intervention/Death Pact will no longer fade on a failed rolled. The buff will remain until you either roll a success or die.
  • Changed the success chance of DI/DP to be closer to the client's formula.
  • DI will now heal NPCs for 100,000 HP.
  • When zoning, players will now receive the message "soandso is now the leader of your group." instead of "You have joined the group."
  • The out of range spell check that happens at the end of a cast will no longer generate interrupted messages. Instead, only the caster will see "Your target is out of range, get closer!" using the spell failure text category.
  • Changed healing messages to use the spell chat category.
  • Corrected some NPC spell messages to use default white text instead of spell.
  • Players will no longer see what spell has been cured, and instead will see "Your target has been cured."
  • Fixed multiple messages that were not correctly displaying for corpse summon spells.
  • Addressed a rare zone crash I see locally. (Not clue if it's fixed or not, I'm not exactly sure what's causing it.)
  • Removed the hardcoded zone_controller NPC as it was creating issues with encounters. The NPC is now found in the DB with ID 10. It will need to be given a spawnpoint in whichever zones it is to be used in.
  • Call of the Hero will now despawn the target's summoned pet and fade charm on their charmed pets.
  • If the target of CoH is within 100 coords of the caster, aggro will not be cleared and the caster may draw beneficial aggro.
  • Randomized the zone-in locs of ports slightly to help prevent players from incorrectly falling to death. Please note: This does not prevent falling to your death while encumbered. The more weight you have, the more likely you are to fall while zoning.
  • AE Mem Blur spells will no longer cause beneficial aggro.
  • Added some logic I overlooked in the Divine Intervention rewrite.
  • Bard pulses will no longer stick on targets who are invulnerable.
  • Corrected the Bard stacking rules regarding spells and songs that are different types (Beneficial vs Detrimental.) This allows as an example Guardian Rhythms and Tashania to stack.
  • Mobs buffed with Divine Aura will now be picked last when a NPC chooses who it will attack each swing.
  • Mez spells with a Mem Blur component will have the Mem Blur effect skipped if the target is already debuffed with the same Mez spell. If a different Mez is cast, any Mem Blur component will be rolled as normal.
  • Spells that use a stack blocker are now properly handled in the Bard stacking rules.
  • NPCs that are immune or are too high in level for a charm or mez spell will now properly resist it.
  • Healing a charmed pet will no longer create beneficial aggro.
  • Minimum faction value cap is now -2000 instead of -3000.
  • Bard song server filters should now match the client's filters.
  • Bards will no longer see the "Your spell did not take hold" message when detrimental AE songs are cast and there are nearby players. Instead, the player target will receive a protected message.
  • Spin stuns on NPCs will now have a random chance to break early. Whirl till you Hurl and Dyn`s Dizzying Draught have a higher chance to break.
  • Corrected an issue causing the stun component of a spin stun to drop without fading the debuff.

Haynar

  • Improved movement of mobs/pets over short distances, so they no longer look choppy sometimes while moving.
  • Fixed an error with the delta position translations from the client, which was not accounting for the (+/-) correctly.
  • Improved the loiter logic when a mob resumes moving, associated with feign death. Mobs should not linger every single time and will resume movement after they start facing their desired direction.
  • Fixed an issue with rotations when mobs return to their guard position. They should rotate smoother until they are facing their guard heading.
  • For NPCs, the delay in moving following loss of engagement, should no longer reset for other loss of aggro methods, such as coh, mez/memblur. The total delay is maintained so that even for FD, it does not reset after one attempt unless it has all been used up.
  • Fixed an issue when a client's charm on an NPC breaks, causing their target to get corrupted.
  • Snared pets will follow their owners a little better, rather than being snared to a stop, when they hit the distance they would switch to walking.

Database: Robregen

  • Pet should now duel wield without weapons.
  • Added a missing flavor text to Froggy in Sebilis
  • Goblin Drunkard in Sol A should now cast spells and a pet.

Robregen / Haynar

  • added Various possible spawnpoints for Quillmane/PH found on live
  • shorten the respawntime of trash roaming mobs in South Karana to 36 seconds.

Misc: Haynar

  • added pathfile for Runnyeye.

6-3-2016 (hotfix)

Database: Robregen

  • fixed Pets not being able to equip weapons
  • Shorten the respawntimer for Sarnak Courier / PH in Lake of Ill omen.
  • Grand Herbalist in Chardok should now always drop a loot.
  • Change PH / Death Beetle to one spawn instead of a various spawnpoint in Soldungb.

6-1-2016

Code: Cavedude

  • Eye of Zomm/Tallon can now open doors again.
  • Spells will now finish casting when they could not take hold on the target. (Consuming mana, triggering cooldown, etc.)
  • If the attacker is no longer valid (dead, LD) when the damage packet is being constructed, we will now have the defender attack themself, instead of letting the client use pain and suffering. This will produce more predictable damage output.
  • Excluded generic factions from counting towards flee ally count. (Indifferent, animal, KOS, noob monster) These NPCs can still be counted if their race matches the NPC about to flee.
  • Eye of Zomm will now spawn in front of the caster.
  • Quest NPCs will now decline hand-ins if their faction with the player is threateningly or scowling.
  • Renamed special attacks SPECATK_QUAD to INNATE_DUAL_WIELD and INNATE_DUAL_WIELD to DO_NOT_EQUIP based on the content developers usage.
  • Implemented DO_NOT_EQUIP NPC special attack. If set, the NPC will never equip any items, including from their loottable or ones handed to them. The items will be placed in the general slot of their loot inventory.
  • Fixed an issue causing AE pacify spells to not check level or immunity of the targets.
  • Mule character limit is not configurable by rule World:MuleToonLimit. It defaults to 8.
  • Moved the defensive avoidance skillup checks while invul to the correct class :I
  • NPCs will now only block KOS handins if the BAD_FACTION_BLOCK_HANDIN special ability is set.
  • Multiple key groups will now display properly when /key is used.
  • Sentinel will no longer create a string error.
  • NPCs will no longer enrage while fleeing, unless they are also rooted.
  • Call of the Hero can now be cast on players in a different map region (water vs land.)
  • The target of /makeleader no longer needs to be in the same zone.
  • Fixed an issue that sometimes caused the group leader to not be set or updated in zones they are not in.
  • Merchants will now be capped at 767 items per slot. If you sell items that exceed that limit, you will still recieve coin for them but they will be immediately deleted and not able to be purchased back.
  • Rewrote /pet who leader logic as it was completely broken.
  • /pet feign now requires the Feigned Minion AA and uses rank to determine the chance of success (25/50/75.) Pet feign likely needs to be implemented in the code at a later time.
  • Added a check to cancel a merchant transaction if the merchant tries to send a 0 quantity stacked item to the client.
  • Rewrote keyring to no longer depend on zone flags. Keyring information will now be loaded from the new keyring_data database table.
  • Quick description of the new table (which can be edited under the Server tab of the editor):

~ key_item: The ItemID of the key. ~ key_name: How the key will display when the /key command is used. Most use the item name, some like frozenshadow do not. ~ zoneid: The zone the key is used in, NOT the destination zone. ~ stage: Used to determine what step you have in tiered zones like frozenshadow. Most keys will just use 0 for this. ~ After the new key is inserted in the new table and the keyitem column is set in doors, you can complete the keyring setup by either: 1. Toggling the nokeyring option under the specific door to "no" in the editor and let the server handle it. OR 2. You can use the keyring methods in lua (with nokeyring left as yes) to manually unlock/port/whatever else you want to do. -- I have converted all existing keys to the new system. Player keyring data is unaffected, and their zone_flags can be deleted. Torven

  • The Defense skill made to only have a chance to skill up when the defender successfully rolls a miss.
  • Spells cast on 'belly caster' NPCs will now do 0 hate if casted from out of melee range if the spell is not unresistable.
  • Defense skill raises moved to AvoidanceCheck()
  • The divisor in Mob:GetMitigation has been removed as the database has been mass edited to have more compatible AC values.

Database: Robregen

  • VP wurms should now be paci-able
  • Spiders in East Karana will now dominate the hilltops.
  • VP Guardians should now be mezzable.
  • Replace the roamboxes in Steamfonts with grids to fix an issue with mobs falling below the world.
  • Replace the roamboxes with grids for Firiona Drixies in Firiona Vie so they should no longer fall below the world.
  • fixed a stacking issue with Worked Silver Chain and Gem Studded Chain

Torven

  • Kithicor Dark Elves now have the 'Not Loitering' flag applied.
  • Veeshan's Peak dragons will now only cast charm on their current targets.

Misc Haynar

  • Updated path files for the following zones: warrens, crystal, skyshrine, necropolis,and droga
  • Added new path files for Sirens, mischiefplane, acrylia cavern, caves and tunnels in dreadlands, and rockhopper caves in dawnshroud peaks.

5-18-2016

Code: Cavedude

  • Charmed vendors can no longer be browsed.
  • NPCs will no longer be affected by Levitate or See Invisible spells. (The spell will take hold but have no effect.)
  • Corrected the success formula for Memory Blur spells. (Thanks Ravenwing and Darchon for the formulas!)
  • The client will no longer apply more damage than it should on melee hits.
  • Added the ability to add an item to the cursor queue without sending a packet to the client. This should help prevent desyncs caused by items being in a different order on the server and client's respective queues. This also allows us to control the cursor queue "rules" server side, and have GMs bypass them if need be.
  • This change fixes the desync that happens when multiple items are handed back as a result of a tradeskill, and should help to bullet proof other cases where the cursor queue is used (forage, spell summons, #si for GMs)
  • Pushing items to the cursor during trades and when no other slot is available in general was not changed in this commit.
  • Added Lua export for PushItemOnCursorWithoutQueue
  • Change how rules are loaded and inherit values - When a custom ruleset is loaded, it will always first look for a value present in the ruleset id for that zone, when it is not present, it will load from the default ruleset instead of immediately falling back to the source value. This is to eliminate the excessive amount of duplicate entries in the rule_values tables (credit to Akkadius)
  • Procs will no longer occur while Divine Aura is active.
  • Stuns will no longer take affect when a NPC is mezzed. Pre-existing stuns will fade when the Mez wears off.
  • Dispels can now be cast on other players in PVP situations.
  • Single target buffs will now overwrite the group version of the buff and vice versa provided the caster's level is equal or greater than the original caster's level. If it is not, it will be blocked in both cases.
  • Added KILLED emote type, which causes the NPC that gets the final hit on any other entity to emote. KILLEDNPC for NPC slays and KILLEDPC for PC slays are unaffected by this and will continue to work. However, using either combined with KILLED will result in a double message.
  • Removed #itemsearch alias "search" since it was ambiguous. #itemsearch, #finditem, or #fi all still work.
  • Added HPRatio to #showstats.
  • Added the remaining boat NPCID defines in preparation of a future commit.
  • Added IsQuestTrigger() to determine if a NPC is an invisible quest trigger. Unused at present, reserved for future use.
  • Damage Shields will no longer have reduced damage in PVP.
  • Added sort_order to npc_faction_entries, so the order faction hits appear in game can be changed.
  • Fixed a zone crash in the emote code.
  • If all the damage was done to a NPC using a damage shield, faction hits will no longer occur.
  • Changed the race/bodytype of zone_controller to match Haynar's findings and to match the triggers in the DB.
  • Removed IsQuestTrigger() as it's no longer necessary.
  • Added mule exception for IP limit.
  • Attempting to open a door with the wrong key will now give the proper message.
  • Added NO_LOITERING special attack, which forces an NPC to immediately begin pathing/return home after losing aggro.
  • Clicky items with 0 casttime and 0 recast delay will no longer suffer a 400 millisecond cooldown.
  • Removed the extra message casters receive when they heal another character.
  • Fixed the issue causing the healed message to not show up for the target on Heals and Life Taps. HoT spells have been excluded from this.
  • When a caster casts an exceptional heal, they will now see two exceptional messages. One for them, and one everybody else sees.
  • Corrected Mez overwriting rules.
  • Stacking rules regarding detrimental songs and detrimental spells will now work better.

Eye of Zomm changes and fixes:


> Players can now chat, and cast spells/songs with the eye up. > The eye is now attackable and killable by all players, and will leave a corpse and grant 1 point of XP. > The eye will no longer assist the caster after the buff has been clicked off. > The server is now properly keeping track of the eye's current location.


Flee changes


> Added a new NPC special attacks for flee: > ALWAYS_FLEE_LOW_CON: Causes a NPC to always flee once they reach the HP threshold if they are green to top hate. > FLEE_PERCENT_CON: Causes NPCs to flee at 50% when they are deep green to top hate. Note: NPCs over level 18 will essentially ignore this special attack as IsDeepGreen() was changed to max out at level 18 when compared to a entity that is level 65. > Removed Combat:UseConForFleeRatio as it is now handled by the special attack above. > Corrected the issue causing a NPC to flee at the percent below the one desired. Changed the default value of Combat:FleeHPRatio to 20 (from 21) as a result. > Changed #fleeinfo to handle the new variables. Altered GetFleeRatio() to optionally accept a Mob object instead of using top hate in order to allow #fleeinfo to print out the percentage the NPC target will run at. GetFleeRatio() in normal flee situations will continue to use top hate. More changes based on feedback from Torven: > Mobs that are level 18 or lower and green to top hate will now always run at 50%. > Removed special logic regarding yellow cons, they will now use the normal percentage calculation. Reds will now always run at a lower percent. > The FLEE_PERCENT special attack will now ignore any special rules. The NPC will always run at whatever that is set at. > Removed IsDeepGreen() as it is no longer necessary. > Please note: We know this still isn't perfect, and that there are many exceptions on Live (and presumably AK.) But hopefully, this should get us closer to where we need to be.


Haynar

  • Updated hazard navigation in pathing to be more accurate. Mobs should be a bit smarter and not fall off bridges or down holes, like on the bridges in Sebilis.
  • Made adjustments to fizzle rates. Everyone should fizzle less, especially hybrids.
  • Added support for different invis types (invis vs animals, invis vs undead) to be sent with spawn packets.
  • Improved some z calculations when npcs move towards other players or npcs in open areas. This should help prevent falling below world when short races are involved.

Torven

  • PC stuns on NPCs capped at 7.5 seconds

Robregen

  • Reworked and refactored UCS Process not to skip clients. (credit to Demonstar)
  • fixed various memleak (credit to Demonstar)
  • added zonecontroller ported over from eqemu. (credit to Akkadius with Cavedude adding lua support)
  • Rewrite VarCache_Struct (credit to Demonstar)

Database: Robregen

  • Captain Boshinko in HHK is now on 6 minute respawn time.
  • adjust loots for Iksar Trustee in Chardok to have an even chance to drop either Earrings of Purity and Cleansing
  • fixed the model for Enraged spectral librarian in Kaesora.
  • the door to Polzin in the hole should no longer be locked.
  • Wu's should now be combinable for all sewing kit containers including racial only containers.

Script Robregen

  • enabled zonewide repop on CT spawn in plane of fear.

Misc Haynar

  • Updated pathing for Kael, Velketor's Labyrinth and Solusek's Eye.
  • Updated some pathing areas with issues in Veeshan's Peak.

5-10-2016 (hotfix) Code: Haynar

  • Mobs interrupted while casting spells, will no longer forget they have spells which they can cast.

5-4-2016

hotfix: Cavedude

  • Changed /who all count loop to match how it was written before. (No functionality additions were lost in this commit

Code: Cavedude

  • Added ChangeDespawn() to lua_spawn.cpp This allows content developers to change the despawn type (and if used) the despawn_timer.
  • Corrected an issue causing /consent to not work until the consented player zones.
  • /consent will no longer send a message to the consented player if the consenter has no corpses.
  • DOT spells like Engulfing Darkness will now display a spell message.
  • Prevented an extra loop from running when a player dies.
  • Added ignore_despawn column to npc_types to have NPCs ignore the despawn column in spawngroup.
  • /who all will now iterate the client list in reverse order, so newer players will appear on the top of the list.
  • Added rules RuleI(World, WhoListLimit) and RuleB(AlKabor, NoMaxWhoGuild) to /who all. WhoListLimit allows us to change the list limit (defaults to 20.) NoMaxWhoGuild allows players to see a non-truncated /who all guild# list. (It's possible the limit is in place to prevent a client crash - this should be tested on Dev.)
  • Cleaned up the code for /who all so it it is easier to read. Added some comments, and some strings as defines as well.
  • Fixed a few issues dealing with pet aggro from DOTs and damage shields.
  • Pets will now aggro when most detrimental spells are cast on their master.
  • Buffs and debuffs should now choose a slot that syncs with the client's internal rules when overwriting existing spells.
  • When overwriting, the yellow spell fade message will now only display when a detrimental spell overwrites a different detrimental spell.
  • Corrected the stacking rule when the same detrimental spell is cast on a NPC by two players.
  • Greatly reduced the hate caused by mana drain spells.cpp
  • Mana drains will now check if the target has mana in the beginning of the cast instead of the end.
  • Damage Shields can now cause offense skillups.
  • NPC pets will now leave corpses with items if they have them.
  • Removed pets_equipmentset code as traditional loottables handle this functionality completely.
  • Items will now display in the last slot on merchants.
  • When full, merchants are now capped at 10 "hidden" items that will show in their inventory list as other player sold items are bought.
  • Added a check to prevent an item's quantity from going negative when purchased by a player on the server.
  • When a permanent merchant inventory item is sold out (Crow's Brew for example) the remaining items will move up a slot the next time the merchant window is opened.
  • Changed the order of merchant inventory logging to reflect these changes and to make more sense.
  • Stackable items in Bazaar merchant lists will now display with 1 charge.
  • Stuns will now interrupt Bard pulses.
  • PVP will no longer be hardcoded in the entire arena zone.
  • Moved the method to fade buffs when entering airplane out of Lua and into the server code.
  • Moved FadeBuffs() to after corpse/XP generation of NPCs to prevent issues with corpse creation.
  • Dying due to Pain in Suffering while in a duel or in PVP will now set the proper killedby value.
  • Enrage will now be checked when damage is done on NPCs who enrage, instead of on the AI timer for all NPCs. This should improve the accuracy of the enrage percentage.
  • Desyncs should be greatly reduced when two or more items are handed back as a result of a tradeskill combine (but this is not completely fixed.)
  • Removed the salvage code.
  • Food/drink consumption will no longer halt in Bazaar.
  • Stackable items will now be combined into a single slot on Bazaar merchants.
  • More changes to spell messages to correct Earthcall.

Haynar

  • Updated pathing to prevent mobs from bouncing in roamboxes.
  • Fixed an issue where mobs won't always rotate back to their guard heading correctly.
  • Added some pathing improvements to help prevent mobs getting stuck in loops.
  • Mobs fleeing or feared in zones like frozenshadow, with distinct pathing areas, will now find fear points within their pathing area. This prevents them from running through walls running for a random node that is not connected.

Torven

  • Newly aggro NPCs that aggro by poximity to hostile entities will now add all entities (players and NPCs) within the aggro range to the hate list simultaneously instead of only one.
  • Unresponsive NPC fix.
  • New stuns on already stunned clients are now ignored.
  • Stuns casted on clients now ignore any stun level cap, which now only apply to NPCs.

Database: Robregen

  • Removed frogloks of Sebilis, Guk, and Krup faction hits from all NPC in Sebilis.
  • Removed Ghroul roots spell from a ghoulish ancilled in Mistmoore.
  • Emperor Chottal in Sebilis should now summon a pet.
  • tainted / corrupted seahorse in Kedge is now KOS.
  • Removed all door objects in Kedge Keep.
  • increase mana pool for Verix in Karnor's Castle.

Scripts Robregen

  • Updated various Plane of Sky quests to fix to reward the upgraded version.
  • Changed the faction requirement for the final turn ins.
  • fixed pathing for Mortificator_Syythrak / PH in Rathe Mtn
  • Changed the Troll Beastlord Newbie Quest to the original version (pre-guktan)

Misc Haynar

  • Updated pathing for frozenshadow.path
  • Updated pathing for Droga.

4-22-2016 hotfix

Cavedude

  • Corrected an issue causing /consent to not work until the consented player zones.
  • /consent will no longer send a message to the consented player if the consenter has no corpses.
  • DOT spells like Engulfing Darkness will now display a spell message.
  • Prevented an extra loop from running when a player dies.

I apologized for shutting the server down immediately instead of 10 minutes warning . My mistake.

4-20-2016 Code: Cavedude

  • Removed RestRegen code as our client does not support it.
  • Mezzed NPCs will no longer seek out new clients to add to their hatelist and will no longer call for help.
  • Corrected the issue causing charmed NPCs to despawn when their player master leaves the zone.
  • Fixed an issue causing phantom waypoints to be added to the end of patrol and circle type grids.
  • Further changes to OP_Damage packet generation to prevent double messages for debuffs with a direct damage component.
  • Moved OP_Damage packet generation from CommonDamage to its own method, Mob::GenerateDamagePackets()
  • Some small tweaks to the filters and how the caster receives damage messages in GenerateDamagePackets.
  • Feign Death will now block PC to PC trade requests.
  • Defensive skills can now skillup while invulernable.
  • Added enums for damage types so we know what we're looking at.
  • Moved OP_Damage from encode to native code.
  • NPC shouts will now display in white text.
  • Changed some spell failure messges incorrectly using MT_Shout to use CC_User_SpellFailure instead.
  • Changed several messges using MT_SpellFailure to use CC_User_SpellFailure to be more uniform.
  • Summon Companion will no longer summon pets that appear on another NPC's hatelist.
  • Pets that are engaged will now add entities that attack their master to their hatelist. (Previously, they were not adding anything to their hatelist while engaged unless they were directly attacked.)
  • Added message when Summon Companion fails due to the pet having aggro.
  • Removed the engaged and hate checks from the flee ally count.
  • NPCs that are deep green to top hate will now flee if able. (We can tweak this one if it doesn't seem right.)
  • /consent will now work on any offline character, even if they don't yet exist.
  • Rewrote the consent packet logic and added some comments.
  • Regen rewrite:

--- Rewrote HP regen formula to match the client. --- Rewrote mana regen formula (Thanks to Ravenwing and guildmate) --- As a result of the above, Bard mana regen is now a fixed value (with level bonuses) instead of being based on meditate skill. --- HP and mana regen will now take level, item, spell, and AA bonuses into account even when hungry/thirsty. --- Classes that do not get mana will no longer calculate mana regen (this includes low level hybrids.) --- Change endurance regeneration to send fewer packets. It now works closer to the behavior seen in packet collects from Al'Kabor. --- Being either hungry or thirsty will now lower/stop mana and hp regen and stop endurance regen. This is how the client works, and due to the other changes in this commit the server must now match to prevent falling out of sync. --- Rewrote code that causes endurance to drop when hungry/thristy to cause smoother updates. --- Endurance updates will no longer occur when endurance has not changed. --- Implemented STR/AGI/DEX penalties when endurance is low. --- Added rule AlKabor:NPCsSendHPUpdatesPerTic. When true, NPCs will send HP updates to players per tick or when targeted instead of real time. This is correct behavior for Al'Kabor, but probably not desired. This rule is more for preservation. Defaults to false. --- Added Regen logsys category, SQL handled by world automagically. --- Added #showregen command to provide details about a player's regeneration.


Haynar

  • Fixed a pathing bug where mobs/pets could get stuck, when they can't find a node route to their destination.
  • Fixed a hate list issue with scripts, that was inadvertently clearing the hate list when it was not desired.
  • Updated some position rounding for mob movements.

Torven

  • Strength modifiers will now adjust NPC offense.
  • Agility modifiers will now adjust NPC avoidance.
  • NPC offense, mitigation, avoidance, and to-hit calcs have been slightly adjusted to be more accurate.
  • Spells with IDs 859 to 1023 have been hardcoded to be uninterruptable. This was discovered in a client decompile by Demonstar55. (these spells are stuff like drake breath and raid boss AoEs)

Robregen

  • Added IsMobSpawnedBySpawnID function to lua (thanks Cavedude)

Database: Robregen

  • Added a missing faction for a soulsipper in Emerald Jungle.
  • Added a missing see ivu for a drolvarg pawbuster in Karnor's Castle.
  • removed see invisible from live names as well as see undead from undead named in Mistmoore Castle.

4-14-2016

Code: Cavedude

  • Fixed a no drop exploit with world containers.

Database: Robregen

  • removed Robe of Invocation from Xygoz loottable in VP.
  • slightly increase the spawnrate for Rotting Skeleton in Dreadlands.
  • VP trash mob are now on the correct faction.
  • added a missing recipe for vale sewing kit.

4-6-2016 (hotfix)

Code: Cavedude

  • Corrected the issue causing charmed NPCs to despawn when their player master leaves the zone.

4-6-2016

Code: Cavedude

  • Charmed NPCs can no longer summon.
  • Fixed the error message when an item is sold to a full merchant caused by the recent bazaar changes.
  • Charmed NPCs will no longer flurry or rampage.
  • Damage spells will no longer produce double messages.
  • Player casters and targets of spells will now always see the spell message regardless of filter or range.
  • Added and replaced IsCharmed() with IsCharmedPet(). IsCharmed() by itself will return true for all NPCs, because the default typeofpet is 3. IsCharmedPet() does the IsPet() for us to avoid this issue.
  • Debuffs will no longer fade on players when they charm the NPC that cast the debuffs.
  • Added rule AlKabor:HighLvlCorpsesAlwaysSpawn to force NPCs 55 and over to always leave a corpse. Default is disabled until we can work out the remaining faction wars issues.
  • Clicking on a NPC will now force an HP update. This "fixes" NPCs that are in a bugged (-HP) state immediately which is what happened on Al'Kabor in this situation.
  • Charmed NPCs and their NPC spell targets will now have debuffs faded when the charm wears off to further prevent faction wars. Players and their spells are unaffected by this.
  • NPC pets will now stay spawned and continue to attack until their hatelist is empty when their master dies or is charmed.
  • Moved where hate is added to the pet when its master is attacked until after the master has checked to see if it is dead. This will cause pets to poof if their master dies in a single hit and nothing else is on the hate list.
  • Added rule Character:SacrificeCorpseDepop if true, new empty sacrificed corpses will have their decay timer set to 3 minutes and rez timer disabled in pok, nexus, and bazaar. (Defaults to false)
  • Some minor code support for the recent corrections made to items.lua.
  • /tgb should now always hit the caster as well as the target group.
  • If a player changes targets during the casting of a group spell, the spell will no longer land on the new target and instead will use the original target.
  • Added DepopPet() to the client deconstructor to hopefully prevent pets from staying up forever in a couple different cases.
  • Added some additional checks when charm wears off of a player's summoned pet to make sure the player is still in a valid state to relcaim ownership of the pet. If the checks fail, the pet will depop.
  • If a damage shield deals all of the damage to a NPC, the player will no longer receive XP and the NPC won't leave a corpse (unless the level 55+ rule is enabled.)
  • A minor adjustment to how damage shield damage is counted to avoid overlap.
  • NPCs will no longer flee if they have allies nearby that are mezzed or feared.

Haynar

  • Fixed pathing for pets and mobs getting stuck.
  • Pathing fixes for pets following
  • Adding raid members will no longer clear the list of looters on everyone in the raid.
  • Updated some pathing that would cause mobs to get stuck sometimes.
  • Added size compensation to hazard checks, so very large mobs like giants, are not stuck trying to step over a pebble.
  • Fixed a group bug, where if you do not accept an invite to a group (or decline) and zone, then you are unable to be invited to other groups.
  • Changed where packets are caught up on zoning. This should help not bug out groups.
  • Changed how its determined which mobs/clients get spawn packets sent to clients, to help prevent some clients not appearing when zoning together.

Database: Robregen

  • Sarnak Casters in Chardok should no longer see invisible.
  • change brownie faction to indifferent for wolf form.
  • Undead Jailor in karnor's castle should now see invisible vs undead.
  • Add a missing faction for Gizzleknot in South Karana.
  • Kly Impecator #3 should drop viscal dagger everytime but reduce spawn chance to be more rare.
  • added missing factions for most merchants in HighKeep.
  • adjust spawntimer or Captain Boshinko in HighKeep
  • Adjust spawntimer for bards.
  • add Noble to Lozani spawngroup and adjust spawntimer.
  • Enabled Sac in PoK, Nexus, and Bazaar.
  • Set rule to true for sac corpse to depop after 3 minutes in PoK, Nexus, and Bazaar.

Torven

  • sebilis: sebilite golem MR increased.
  • Bolt spells removed from default magician NPC spell sets.(should have been in patchnote 2 weeks ago)

Cavedude

  • Torpor will no longer be castable on non group members.

Script: Robregen

  • Correct the Shadowknight reward item for Plane of Sky

Cavedude

  • Corrected a couple of issues that would incorrectly cause items to be eaten in the MQ code.

Misc: Haynar

  • Update Soldunga path file.

3-23-2016

Code: Cavedude

  • Rewrote how trader items are loaded. Changed the logic performed in the initial loop and added some additional sanity checks. This should help to prevent bogus or no drop items from being added to a trader's item list erroneously especially in the last couple of slots. This will also help to keep better track of items when they are moved around in the satchel while the trader window is up.
  • Traders will no longer need to price all their items or remove no drop items from their satchels before starting trader mode. The server will simply skip over those items, if the client sends them.
  • Fixed an issue that would sometimes cause the item in the last slot to not show to buyers, or to display as a bogus item.
  • Rewrote the logic for adding a item while trader mode is running. This was required since we no longer require all items to have a price beforehand. This also fixed a bug that would allow a trader to put a no drop or bogus item up for sale.
  • Replaced references of SerialNumber which our client doesn't use with inventory SlotID. This will help to ensure the proper item is being worked with across the board in the bazaar system, particularly stackable items.
  • Changed the item number variable to int16 in bazaar searches, in case a buyer has more than 255 of a given stackable item.
  • Fixed an issue where the bazaaar search would occasional "split" a stackable item into several items.
  • Lots of general cleanup and adding/changes to bazaar logging.
  • Fixed a bug with moving items to a corpse that created issues with soulbound bags. (GM only)
  • Changed the error handling of the above situation to attempt to correct the problem on the fly, instead of giving up. (GM only)
  • NPCs will now try to flee at regular intervals once they are below the HP threshold.
  • Bazaar search for All Effects, Haste, and Flowing Thought will now work properly.
  • +mana items will no longer update current mana when equipped or removed.

Haynar

  • Fixed the range check for bard group spells in raids.
  • Netcode updates.
  • Added special handling to prevent going into packet loss.
  • Rewrote how resend of dropped packets are handled.
  • Changed arq responses to use a moving window for deleting ack'd packets.
  • Netcode updates to limit burst packet data rate sent.
  • Fixed pathing in HHK and Unrest basement.

Database: Robregen

  • Change Quillmane spawn mechanic in South Karana removing the need for scripting.
  • Change Brother Qwinn and Grizzleknot spawn mechanic.
  • change respawntimer on sister island to 6 minutes.
  • added Wans undead frogloks in with Zols types near Frenzy room in lower guk.
  • Bazaar is now an outdoor zone.
  • wolf form should now be kos in FV.

Robregen/Torven

  • Add a missing spell proc to "The Golem Master" in The Howling Stone.

Code: Cavedude

  • Rewrote how trader items are loaded. Changed the logic performed in the initial loop and added some additional sanity checks. This should help to prevent bogus or no drop items from being added to a trader's item list erroneously especially in the last couple of slots. This will also help to keep better track of items when they are moved around in the satchel while the trader window is up.
  • Traders will no longer need to price all their items or remove no drop items from their satchels before starting trader mode. The server will simply skip over those items, if the client sends them.
  • Fixed an issue that would sometimes cause the item in the last slot to not show to buyers, or to display as a bogus item.
  • Rewrote the logic for adding a item while trader mode is running. This was required since we no longer require all items to have a price beforehand. This also fixed a bug that would allow a trader to put a no drop or bogus item up for sale.
  • Replaced references of SerialNumber which our client doesn't use with inventory SlotID. This will help to ensure the proper item is being worked with across the board in the bazaar system, particularly stackable items.
  • Changed the item number variable to int16 in bazaar searches, in case a buyer has more than 255 of a given stackable item.
  • Fixed an issue where the bazaaar search would occasional "split" a stackable item into several items.
  • Lots of general cleanup and adding/changes to bazaar logging.
  • Fixed a bug with moving items to a corpse that created issues with soulbound bags. (GM only)
  • Changed the error handling of the above situation to attempt to correct the problem on the fly, instead of giving up. (GM only)
  • NPCs will now try to flee at regular intervals once they are below the HP threshold.
  • Bazaar search for All Effects, Haste, and Flowing Thought will now work properly.
  • +mana items will no longer update current mana when equipped or removed.

Haynar

  • Fixed the range check for bard group spells in raids.
  • Netcode updates.
  • Added special handling to prevent going into packet loss.
  • Rewrote how resend of dropped packets are handled.
  • Changed arq responses to use a moving window for deleting ack'd packets.
  • Netcode updates to limit burst packet data rate sent.
  • Fixed pathing in HHK and Unrest basement.

Database: Robregen

  • Change Quillmane spawn mechanic in South Karana removing the need for scripting.
  • Change Brother Qwinn and Grizzleknot spawn mechanic.
  • change respawntimer on sister island to 6 minutes.
  • added Wans undead frogloks in with Zols types near Frenzy room in lower guk.
  • Bazaar is now an outdoor zone.
  • wolf form should now be kos in FV.

Robregen/Torven

  • Add a missing spell proc to "The Golem Master" in The Howling Stone.

3-16-2016 (hotfix)

ode: Cavedude

  • Fixed the message sent when a player buys an item from a bazaar trader. (This message was completely cosmetic, I have confirmed that the actual plat transaction was NOT affected!)

3-16-2016

Code: Cavedude

  • Greatly increased the hail range. This should help with hailing scions and other NPCs in general.
  • Lowered the say and emote range slightly to reduce spam.
  • Added IsUnTargetable() method to Mob, and changed several places to use that.
  • Changes to the Nexus transport system to be more accurate visually.
  • Fixed the issue causing NPCs to sometimes flee when they shouldn't.
  • The item count will now display on Bazaar searches
  • Players will now be stripped of levitation spells when entering trader mode. Levitation spells will now also be blocked when cast on a Trader.
  • Fixed an erroneous double packet sent when a player buys an item from a trader.
  • Fixed an issue with damage shield stacking between a spell and a song.
  • Made the character creation process a bit cleaner and cleaned up the world logs a bit.
  • Added encounter column to npc_types. This forces the NPC to skip the internal check done when an item is handed to them and either eats the item, or lets lua handle it.This column should be set to 1 for any NPC that accepts a hand-in as part of an encounter script. It is not needed for normal quest NPCs.

Haynar

  • Fixed an issue with raids, where if a person leaves a group, the raid is not updated correctly.
  • Fixed an issue with re-assigning raid group leaders, if they leave the raid.
  • Removed some extra messages (not all) when changes are made to raids.
  • Fixed an issue with someone leaving a group, that required in sending extra packets to the client, to allow them to be invited to other groups.
  • Added support for /makeleader in raids, so group leaders can be changed.
  • Raid group leaders can no longer ungroup people from different groups within their raid.
  • Summon spells will no longer say you are distracted if you have an item on the cursor. The client cursor will not allow summoning multiple items that are the same, so mana and any needed reagents will be consumed. You have been warned.
  • Bard Group songs in a raid, will now have a range check to group members.
  • Pathing fix for mobs cutting corners.

Robregen

  • Removed mail related code from UCS since client don't use it.

Database: Robregen

  • Enabled Pok stone and books that has zone with Spires.
  • Enabled levitation for Nexus and Bazaar.
  • Enabled binding for Nexus and Bazaar.
  • Fixed world containters (Forge, Ovens, Looms, Pottery) in Bazaar.
  • Fixed recipe for potion of greater rejuvenation.
  • Skeletal Crusader should now drop one of the main loots.
  • Added a missing NPC "a pickclaw visionary" to highkeep.
  • Adjust spawnrates for warriors and raiders room in Highkeep.
  • Adjust loottables for fine steel and bronze armors from warriors and raiders in highkeep.

3-9-2016 (hotfix)


Code: Cavedude

  • OSX will no longer crash when a player browses their wares in trader mode.
  • Rewrote trader item deletion to be safer and less bug free. (An item desync, Application Move Failed error, and item dupe were all fixed by this.)
  • Stacked items bought from a trader will now try to stack in your inventory.
  • Traders inventory window will now properly update when a stackable item is purchased, but the stack was not depleted.

3-9-2016

      • Patch Highlights ***

Raid Windows has been implemented, Bazaar and Nexus is now open.

  • NOTE* Pok books and Stone has been disabled to zones that has Nexus Spires.

/ooc and /auction is being disabled to stress test Universal Chat Server. See notes at bottom for Raid Information

Code: Cavedude

  • Moved Nexus portal functionality from lua to server code. This has proven to be faster and more reliable.
  • The NPCIDs of the various Nexus NPCs (A_Mystic_Voice, The_Norrath_Spires, the Scions, etc.) are all hardcoded in the code, so that we can access them to cast spells or send signals. They cannot be changed in the DB, or the system will break!
  • Rule Zone:EnableNexusPortals can be used to disable the Nexus portals (defaults to true.)
  • Zones that use the Nexus portal system will not idle when empty when the rule is enabled.
  • Player corpses will now retain any illusion the player had on them at the time of death.
  • Implemented raid XP.
  • Updated special bind area rules to use coords found in the client. Thanks demonstar55 for the decompile!
  • Implemented lua methods eq.pause_timer("timername") and eq.resume_timer("timername"). This allows developers to pause and resume the given timer on the current NPC.
  • Fixed an issue with clicky items using the wrong level for their formulas.
  • Fixed an issue where some skills could incorrectly appear on a trainer's list.
  • Shadowknight and Paladin epics will now do bash damage.
      • Bazaar Trader rewrite:

~~ Rewrote much of the trader code to work more efficiently and clear up some minor bugs I found. ~~ Moved all functionality from encode/decode to native code. ~~ Fixed a few structs that were a bit off. ~~ Traders will now receive a message in their window when a player browses their wares. (Thanks Haynar for figuring out the struct!) ~~ The buyer's client will now correctly update when a seller changes the price or adds an item. ~~ Added a new rule AlKabor:AllowPriceIncWhileBrowsing. When false, a trader cannot increase the price of an item while another player is browsing their wares. (Defaults to true.) ~~ Updated the bazaar.map. PVP will now work in the arena area (DB change also made for this fix.) ~~ Removed bazaar.path as it is meant for the newer version of the zone. ~~ Bazaar traders can now be used by multiple players simultaneously. ~~ Trader mode will now end if the trader goes LD. Haynar

  • Added support for raids. (see bottom of this note for functionality)
  • Using guildmotd by itself will return the current guild motd.
  • The guild motd will only be sent when intially logging in, not every time you zone.
  • Fixed an issue where players will move slightly on logging in, when their x or y coordinates are negative.
  • Changed how zoneinpacket_timer is handled. Changes are to prevent skipping spawn packets, between sending of bulk spawns and completion of client connecting process. This will help ensure spawn packets are all sent, before mob position updates start.
  • Fixed a minor pathing issue, used for culling end of route, when target moves closer. The end node to be culled, was not being trimmed correctly.
  • Fixed an issue where moving mobs would pause and warp forward.
  • Improved some of the mob movement code by removing some redundanct code pieces and sending through a common function.
  • Reduced the bulk packets sent when zoning in for npc movements.

Robregen/Speedz

  • removed an extra safe_delete that was crashing queryserv

Database: Robregen

  • removed charges from summoned: wisp stone
  • reduced the max hit on wraithbone champion in Dreadland.
  • add Sarnak Courier to another spawngroup so to give better chance to spawn.
  • reduced the spawntimer to the standard 6 minutes to the area near the ruins where Sarnak Courier and its PH spawns.
  • Shovel of Ponz should be clickable (reclaim energy) from inventory by any classes.

Script: Robregen

  • fixed the faction requirement for Shaman Epic for those are doing in order.

Hakarri

  • Furtog Ogrebane: Fixed Faction Rewards for Ogre War Maul, Randomized Coin Reward
  • Garuc Anehm: Fix message trigger
  • Added missing dialogs for the following NPC: Brohan Ironforge, Belyea K'Jartan, Dren Ironforge, Haggle Baron Klok, Hurrieta Ironforge, Lanhern Firepride, * Ratraz, Svenia Ironforge, Ton Firepride, Suuspa Clanim, Joffrey Clay, Crow, Shenro Kazpur
  • Mare X'Lottl: Added missing turn in quest
  • Guard Weleth / Lieutenant Dagarok / Nesiff Tallaherd: Reduced XP Reward for Crate Quest because it was too high. Additionally, the Quest now requires at least indifferent faction
  • Chesgard Sydwen: Lowered XP Reward for Bandit Sash Quest
  • Gharin: Reduced XP Gain from turn in
  • Hanns Krieghor: Added correct turnin message for Stanos Head and correct Faction Rewards
  • Added missing dialog regarding donation quest for the following NPCs: Largon Welsh, Danaria Hollin, Solani Dayadil, Gahna Salbeen, Moran Smith, Bassanio Weekin, Barthal, Rabley Trumend, Ton Firepride, Iala Lenard, Cassius Messus, Bait Masterson, Gerault Takenmaul, Rodgar the Tall
  • Lashun Novashine: Added missing dialogs, Fixed spell being cast when turning in gold, Fixed spell being cast when turning in bone chips, Now requires at least 2 bone chips to complete
  • Serna Tasknon: Fixed Faction Reward for Shark Powder Quest
  • Tonmerk Plorsin: Added missing Dialogs, Added faction check to start shark powder quest, and Fixed Faction Rewards for shark powder quest
  • Chesgard Sydwen: Added missing dialogs and Added missing faction checks for blanket quest
  • Daedet Losaren: Added missing dialogs, Added missing faction checks for specific trigger messages, and Added Cash Reward for Beetle Eye Chest Quest
  • Priestress Caulria: Fixed Faction Rewards for Rabid Grizzlies and Fleshy Orbs Quest
  • Lempeck Hargrin: Added alternate quest ending for turning in a bad Prime Healer Potion and Added missing dialogs
  • Astaed Wemor: Added missing faction checks for trigger messages, Added missing dialog, and Added possibility to return a bad cure for Lempeck Hargrin
  • Whysia Flock: Added Quest and Dialog for "Recharging" the Shining Star of Life
  • Cassius Messus: Added missing faction check for starting Lisera Lute Quest and Added missing dialog
  • Flynn Merrington & Moodoro Finharn: Added missing dialog trigger
  • Anson McBale: Adjusted Faction Check to spawn Stanos and Made sure Stanos is a unique spawn upon handing in the pouch
  • Lomarc: Added missing Quest Package from Lomarc
  • Renux Herkanor: Added missing Quest Package from Lomarc and Added missing message triggers
  • Den Magason: Added missing Quest Ghil's Package and Fixed Faction rewards for Package for Den turn in
  • Ghil Starn: Added missing Quest Ghil's Package and Added faction checks for starting Package of Dan Quest
  • Raz The Rat Misk: Added faction checks for turnin Quests
  • Phin Esrinap: Fixed message dialogs regarding Konem and Fixed Faction Reward for Note from Konem
  • Konem Matse: Fixed faction rewards for Phin's Message and Added Dialog
  • Seta Bakindo: Added faction check for starting Tomer Quest

2-24-2016 (hotfix)

Code: Haynar

  • Fixed an undersized buffer issue that could cause player inventories to appear empty.

2-24-2016

Code: Cavedude

  • Fixed SE_CurrentHPOnce not updating the client properly.
  • Fixed the long time spawn_conditions crash.
  • Bind Sight will now be castable on targets in a different region.
  • Players with See Invisible will now properly see other players who are hidden/invisible server side.
  • Added a spot where Voice Graft should be faded when a pet leaves.
  • /who all lfg will now function.
  • /who all will now use a player's base race instead of their illusion race.
  • /who is unaffected by both changes.
  • Some minor logging changes.

Haynar

  • Updated how character inventory is sent when zoning. This should improve zone times.
  • Added checks for items in no rent bags, so their deletion can be logged better, if the no rent bag expires.
  • Returned position update frequency to original setting.
  • Fixed a legacy netcode issue that makes it look like client is lagging, when they really aren't.
  • Added some checks to improve the reliability of trading and prevent item loss.
  • Clients will no longer get group bugged, when they accept joining a group, but the group is already full.
  • More fixes for groups getting bugged when someone gets disconnected while zoning.
  • Changed some pet checks to be less CPU intensive.

Torven

  • The melee mitigation algorithm has been updated for more accuracy. Very low level player and NPC mitigation in particular will be noticably more accurate.
  • The player character damage multiplier function is now more precise.
  • Weapon elemental damage now uses a simple function taken from a decompile instead of using the spell resist function. (decompile credit: Demonstar)
  • Ripostes may now trigger from other ripostes. Client attacks while under a riposte discipline are now unripostable.
  • AC buffs on NPCs fixed to not increase AC more than desired.
  • Avoidance bonus from agility capped at 200 agility.
  • Melee avoidance and mitigation AAs are now implemented and verified to be correct.

Database: Robregen

  • fixed faction for Bloodgill Goblins in LoIO.
  • fixed the mushroom groundspawns in North Kaladim.
  • Added a missing NPC "Draketamer" to Frontier Mountains.
  • Added some missing static Gnolls in Blackburrow.
  • Fixed the gate in Sol A to open all at once.
  • Added a missing NPC "a soothsayer goblins" in Temple of Droga.
  • Added missing loot "Drogan obsidian dagger" to goblin whipcracker in Temple of Droga.
  • Added missing loot "Write of Di'Zok" to Korucust's Courier in Chardok.
  • The door to Aeris Greymalkyn in Highkeep should now be perma-lock.
  • Added a missing spellset to Froglok Dar Wizard in Sebilis
  • Added a missing faction to "a rotting skeleton" in Nektulos Forest.
  • All giants and cyclops including Hill Giants, Seafuries, and Forest Giants should now be immune to stun and mez (verified on live)
  • Ssolet Dnaas should now be KOS to all except Iksars.
  • Added a kobold missionary to Steamfont as part of a Eruden / the Warren quest.

Script: Robregen

  • restricted turn in to Surran on the appropiate islands for Plane of Sky.
  • added timer to Bazzt_Zzzt in Plane of Sky to depop within a time limit.

Harakari

  • Tazgar - Added faction hit on Hail and message triggers
  • Tam Visilin - Added Message Trigger
  • Pungla: Added message triggers and turnin
  • Lokar To`Biath - Fixed Faction Rewards for Red Wine and Scribe of Dal Quest; Added missing text trigger
  • Rysva To`Biath - Fixed Faction Rewards for Scribe of Dal / Book of Turmoil Quest
  • Sister of Erollisi : Added missing text triggers
  • Styria Feamon : Fixed Faction Reward for Pirate Earing and Erollisi Bracer Quest and Fixed Reward Messages
  • Sinnkin Highbrow : Added missing message trigger and Fixed Faction Reward
  • Phloatin HighBrow : Added missing text trigger
  • Fixed Faction Reward for Regurgitonic Quest
  • Frostbite: Add missing message trigger and added faction reward and text for Regurgatonic Quest
  • Te`Anara: Added faction checks for starting Regurgitonic Quest
  • Gregor Nasin: Fixed Faction Reward for turnin related to Barkeep Compendium
  • Clurg: Added Faction checks for message triggers regarding clurgs revenge and the exotic drink quest
  • Clurg: Added real message for starting imposter Quest
  • Clurg: Fixed Faction Reward for turnin of Clurgs Revenge and Exotic Drinks
  • Clurg: Added required faction checks for turnin of Clurgs Revenge and Exotic Drinks

Misc Haynar

  • updated hole pathfile.

2-13-2016

Scripts Robregen

  • disabled MQ on VP related quests.

2-11-2016 (hotfix)

Code: Haynar

  • Fixed an issues with groups sometimes getting bugged, when group members go linkdead.
  • Changed how client positions updates are sent to nearby clients. This will smooth out the big data spikes that happen when there are several players nearby.
  • Reverted the far distance mob update changes, that were causing mobs to warp a lot when you try to chase them down in big zones like skyfire.

2-10-2016

Code:

Haynar

  • Fixed an issues with groups sometimes getting bugged, when group members go linkdead.
  • Changed how client positions updates are sent to nearby clients. This will smooth out the big data spikes that happen when there are several players nearby.
  • Reverted the far distance mob update changes, that were causing mobs to warp a lot when you try to chase them down in big zones like skyfire.

2-5-2016 (netcode hotfix) Code: Haynar

  • Added netcode fixes for arq response resends, and rolling over when reaching max value.

code: Haynar Code: Haynar

  • Updated Netcode
  • another Netcode update.

1-30-2016

Code: Haynar

  • Teleport door fix.
  • Made Z adjustments for fixed size dragons. This will help prevent them from hopping while moving or falling below the world.
  • Fixed some spell interrupts which were incorrectly triggering spell gem cooldowns.
  • Netcode Update.

Database: Robregen

  • removed Tarnished and Fine Steel conversion recipe
  • celestrial essence recipe changed to use appropiate container and skill for the era.
  • herald Telcha in Chardok should no longer aggro.
  • added burn wood staff to other golem loottable in Chardok that were missing it.

Script: Robregen

  • Fixed the enchanter epic script in Kaesora for Freed Soul to AE upon death.

1-28-2016 (real patch) IN the LAND of the hotfix real patch is king

the code patch from yesterday didn't happen since I forgot to update the master repo.

code only patch: http://www.takproject.net/forums/index.php?threads/1-27-2016.4959/

Database: Robregen

  • skeletons in Kaesora should no longer flee.

Script: Robregen

  • fixed stanos trigger spawn to be unique.

1-27-2016

Code: Haynar

  • Changed attempting to pick up duplicate lore items, to totally block the client from picking it up. Added prevention of picking up bags which contain lore items you already possess.
  • Fixed an issue with Race 63 (Vah Shir beastlord pets) z_offset, which is calculated different than other mobs. This will fix the problem with them bouncing.
  • Pets guarding will only send position updates now, when their heading changes. They were sending some unneeded updates.
  • Vah Shir Beastlord pets, will no longer bounce rapidly when guarding.
  • Updated Z_Offsets.
  • Shaman pets and Barbarian Beastlord pets, will no longer jump while guarding.
  • Updated bestz when a pet is set to guard, so it will not bounce. This happened if pet was set to guard, right where it was spawned.
  • Fixed an item desync issue associated with forage.
  • Adjusted fizzle rate to lower fizzle chances.
  • Fixed a potential item desync, associated with summoning items utilizing spells
  • Reduced fizzle chance for hybrids.
  • Added message handling to give the proper trade request reply, when someone has their client set to accept trades from nobody, or only accepting trades from their group.
  • Updated mob position updates at a distance to help with data spikes and LDs. Sorry this messes up tracking distance sorts, but will have to do until I put something better in place.
  • Added more adjustments to ranged attacks.
  • Updated Z calculations for mobs while pathing, and when they reach nodes, using their z-offsets.
  • Changed some logic in pathing, where sometimes a node could be reached, but it would not update position to that node.
  • Updated min z range for mob updates, to use a minimum value of 200.
  • Updated pathing code to work better for kedge.
  • Fixed an issue where spell gems would flicker after a spell is finished, causing spells to sometimes be interrupted or certain spell gems to end up getting locked out for longer durations.
  • Added additional commands to allow better management of doors associated with pathing node neighbors.
  • Fixed a possible item loss associated with spells that summon items. This prevents items being consumed, such as during gem imbues, or enchanting ore, but not giving you the end result item.
  • Moved LoS checks server side before the fizzle checks.
  • Fixed an issue with checks for items cast from inventory slots, to be treated the same as procs for applying hate. The check was being performed too early, causing unexpected results.
  • The Greenmist Recourse from Greenmist should now work correctly.

Cavedude

  • Weaponshield will now correctly last 20 seconds (Thanks Torven for confirming with logs!) instead of 15.
  • Corrected an issue with looting 2H items.

Surron

  • Beneficial str buffs will now say 'your spell did not hold' instead of landing without a buff icon on targets affected by rez effects
  • str spells wont stack with rez if the str modifier is in slot 1
  • fixed bug where HOWLERS (seb/HS portals) would not allow subsequent clients to click using keyring
  • doors with opentype 58 were not being closed, now they are... no longer have to specify name = 'HOWLER' like previous commit

Database: Robregen

  • Readjust Epic Mage pet size.
  • changed the respawntime for bloodgill maruader to 8 hours in lake of ill omen
  • changed the respawntime for an ancient jarsath to 8 hours in FV.
  • fixed shroud of undeath to proc the appropiate lifetap instead of a root.
  • spectral type NPC and Failed Crypt Raider in Kaesora should now flee at low health.
  • Thunder Salmon should be fishable at lower skills.
  • The Storm Mistriss in plane of sky is now disabled until later expansion.
  • Hate mini boss will now spawn instantly at server reset.
  • fixed recipe for Bag Of Shark Remains to use correct shark skin component for the banacle BP quest (Thanks Harakari from eqc)

1-13-2016

Code: Haynar

  • Added size adjustments to client ranged attack distance calculations. This makes client and server range distance calculations to be more in agreement. This will minimize out of range messages from the server, when the client thinks you are in range.
  • Netcode update.
  • Updated buffer sizes for mac packets which undergo Deflate.
  • Updated some logging values for packet debugging.
  • Changed how initial mob position updates are sent when zoning. This reduces the burst traffic right after zoning is completed up to 80%.
  • Updated how mob position updates are triggered for mobs that are stunned. This should reduce warping/ghosting in some situations.
  • Improved NPC target management during attack rounds.
  • Updated pet hate management to be more accurate with how they behaved on AK.
  • Changed fixes for targets becoming invalid after charm breaks, to not be so hackish. Updated to also include additional spells that would have also caused client targets to break.
  • Pets will now face the correct direction while guarding.
  • Distance sorting for tracking should now be more accurate.
  • Spell: Summon Companion, will no longer work on charmed pets.
  • Added Support for Unswervering Hammer of Faith and Flaming Sword of Xuzl.
  • Fixed an issue where the client thinks a spell target is in range and allows to begin casting. But server thinks the target is out of range, and interrupts the spell and shows out of range, at finish of spell. Their range calculation methods for spells should be better in sync now.
  • Memory blur line of spells should now function properly.
  • Pets will no longer be transported with their owners during succor/evacuate/translocate. Closed a loophole where they could sometimes.
  • Improved hatelist management for rooted mobs. Rooted mobs will now prefer the closest PC in melee range, over NPCs (pets) in melee range. If they summon, they will only do so if nobody is in melee range.
  • Added an adjustment to client position updates, so other clients should no longer bounce when you see them.
  • NPCs should buff and heal other NPCs less, which are too far above or below them.

Haynar/Torven

  • Updated how summoned stackable item quantities are calculated.

Cavedude

  • Spell restrictions for group spells/MGB will now work properly.
  • Fixed an item desync issue with dropped lore items.
  • Added QueryServ logging for item desyncs. The log messages are the same as the inventory logsys entries for now. The new table is added by world automagically.
  • Players will now be kicked when they desync to prevent item loss.

Stairs (P2002)

  • make loginserver log message better
  • dont push npc's if perma rooted

Database: Robregen

  • remove proc effect from Warrior Epic (Blade of Tactics) since the worn effect is already the effect.
  • increase the size for Mage Epic Pet.
  • change blast spell on Mage Epic Pet to be a proc instead of a cast.
  • Tiblner milnik should no longer be on FV faction for mage epic turn in.

Robregen/Haynar

  • adjust the stats for temp pets (cleric hammmer, wiz sword) based on live parsed data.

Script: Robregen

  • simplify the questsay for Plane of Sky shaman Test of Health quest.
  • readjust the trigger timer for Keeper of Soul in Plane of Sky to be a variant between 48 to 85 minutes to spawn.
  • readjust the global to 4 hours once Keeper of Soul in Plane of Sky timer is set.

12-31-2015 (hotfix) Code: Haynar

  • The real fix for flickering spell gems on mana updates. This fixes bards too. Sorry bards.

12-30-2015

Code: Haynar

  • Updated Fizzle Calculations.
  • Charm fading target corruption fixes ... again.
  • Updated mobs appearance (sitting, standing, crouch, etc.) in bulk spawn packets, to reflect their position accurately.
  • Removed sending appearance updates, for non-standing mobs, during zoning process, since it goes out in spawn packet.
  • Dot Damage will no longer break invis.
  • Alliance spells will no longer cause aggro.
  • The client spell gems will no longer flicker all the time on regular OP_ManaUpdate's.
  • Netcode improvements
  • Removed some position update rounding that was causing mobs to jump.

Robregen

  • Add EVENT_TICK for NPCs -This event fires at the start of the tick processing so we can script on the actual tick. (Demonstar from EQEmu)
  • Adds IsBlind() and IsFeared() functionality to Perl and Lua. (KinglyKrab from EQEmu)

Database: Robregen

  • Add krup shammy and krup knight to the krup wizard spawngroup roaming near the sepsis/necrosis scarab camp.
  • Remove the spellset from Elemental Crusade in the hole since it is a warrior class for that version of hole.

Script: Robregen

  • Added various missing text in Halas, Eruden and
Qeynos.
  • Removed an out of era quest for Yakem_Oreslinger
  • increase spawn chance for tainted seahorse in kedge keep.

12-16-2016

ode: Torven

  • Being drunk will now reduce to-hit and avoidance by the appropriate values. (credit to Demonstar for the client decompiles and pseudocode)
  • Worn item atk is now factored into offense calculations.
  • Worn item atk is now capped at 250.
  • AC from buffs is now calculated correctly. AC buffs will be much more effective now.
  • Avatar from primal weapons is now hardcoded to add to item atk instead of spell atk as per Demonstar's client decompile, making atk from primal weapons subject to the item atk cap.
  • Bonus mitigation from agility is now calculated using the eqmac client formula instead of the modern EQ formula. (credit to Secrets for the decompile)
  • Bonus avoidance from agility is now estimated to approximate the eqmac client formula instead of the modern EQ formula.
  • Spells with a -hate component will now work correctly. (e.g. jolt)

Robregen

  • Readjust wolf size (thanks to Harakiri suggestion)
  • change default value in rule tables for succor failed chance to .005 to refect the .5%

Database: Torven

  • hole: Slizik the mighty is not longer flagged immune to magic.

Robregen

  • Added a mixture of NPC in Sol A to be more diversify.
  • Added a misssing forage "Papaya fruit" to Shadeweaver
  • Removed Cactus pulp and Ro Date from Oasis's forage list
  • Forager and Hunter in Trakanon should now drop spectral bow 100% of the time.
  • Rogue should now be able to sneak and hide in Sebilis except for the crypt area.
  • a alchemist's acolyte in Chardok should now always drop an item.
  • Dread Widow should now show the correct model in Dreadland.

12-9-2015 (hotfix)

Code: Haynar

  • Fixed issue with GM flag being set in ServerZoneEntry.
  • Fixed issue with anon flag in ServerZoneEntry.

12-9-2015 crash fix and misc

Code: Torven

  • conning pets crash fix

Haynar

  • Fixed some rounding issues with clients vs server locs.
  • Client and Server will round their positions the same way now, when converting x and y coordinates from float to int.
  • Changed encoding for ServerZoneEntry_Struct to be direct, so as to not round positions and heading. This helps prevent client loc and heading changing when logging in.
  • Fixed an issue with the z adjustment for clients, using zone geometry when logging in. It was not updating correctly based on the real value for bestz.

Robregen

  • Changed Datatype to Real for Succor fail chance and set it to 0.5 by default.

12-2-2015 A ROOM FULL O SCALES AND PILLOWS VP is now open.

Highlights: Veeshan's Peak is now open.

Code: https://github.com/EQMacEmu/Server/pull/549 Haynar

  • Packet Logging improvements.
  • Moved some logic for some extra checks associated with logging.
  • Server to Client packet logging, will now show the actual opcode along with the translated name. The emu opcode was shown before, which provided no value added.
  • Charm fixes - again.

Robregen

  • change the default setting for TradeskillSkillUpModifier to 0
  • Fix mob overpopulation on "idle" zones (Noudess)

Torven

  • NPCs will now be more selective when deciding which spell to cast.
  • NPCs will now only cast slows on melee classes.
  • Targeted AoE spells that hit entities other than the caster's target will now check LoS with the target instead of the caster again.
  • Low health aggro now tapers with distance after 100 distance.
  • NPCs may now charm pets.
  • Summoned pets that get charmed will now return to their owners when charm fades.
  • NPCs that get charmed by other NPCs will no longer hate the casting NPC after charm fades.
  • NPCs may now have multiple charmed pets.
  • Pets charmed by NPCs will now get that NPC's top hated entity and a random hated entity in their hate lists, with a very slight preference for the random entity.
  • Summoning a pet will now add a very small amount of hate, subject to witness checks.
  • Attempting to charm an NPC while having a pet will now result in the proper 'only one pet at a time' message instead of 'this NPC cannot be charmed.'
  • NPCs with heal spells will now start healing at 50%, up from 35%.
  • Non-pet NPCs will now be able to land spells on clients in different regions. (i.e. underwater)
  • Pet backstabs will now do max hit * 3 damage.
  • Mana reduction from specialization now applies to every spell cast.
  • Charmed pets no longer cast the gate spell at low health.
  • Accepting a resurrection spell now removes the player from hate lists.
  • Intellectual Superiority and similar buffs will now reduce fizzle rates.
  • Fizzle code reworked:

Minimum fizzle chance is now 2%. Fizzle reduction from prime stat is now 1% per 10 above 75, capped at 12.5%. Bard fizzle prime stat is now either char or dex, whichever is higher. Fizzle reduction from specialization is now specialize skill / 10. Note that some spells are intended to still have a high fizzle rate. These changes are not precise. They are estimates based on limited data, and may be changed in the future.

Database: Robregen

  • sepsis / necrosis in Sebilis should now drop a gem everytime.
  • readjust sepsis / necrosis spawnrates in Sebilis.
  • Changed item name from 'Dismembered Finger' to 'Ring-scored Talon'
  • Changed item name from 'Dismembered Thumb' to 'Intricate Toothed Ring'
  • Changed item name from 'Mutilated Forearm' to 'Petrified Talonless Claw'
  • Drolvargs should now be kos to halflings.
  • fixed the loottable for Quid Rilstone so Siryn Hair should drop more commonly than Man-o-War
  • Fixed the loottablse for Nilipus so he should now always drop a brownie (parts or others)
  • added missing loottables for 'a mosquito' in cabilis catacomb.

Torven

  • Trakanon's atk reduced.
  • Resist magic removed from default NPC spell sets.

11-18-2015

hotfix: revert the following:

  • Players that have charmed mobs targeted, will no longer have their target go invalid after charm breaks. No more re-targeting required.

11-18-2015

Code: Torven

  • Forget chance of static NPCs returning to their spawn points after a feign death is now back to 100%.
  • Two minute forget timer for feign death has been increased to 10 minutes.
  • Lull critical fail chance is now 93% - Charisma * 100 / 375, 15% minimum.
  • Lull fade early chance is now 1% * (targetLevel - casterLevel + 2) per tick.
  • Archery was doing twice the damage it should have and has been corrected.
  • Critical hits and crippling blows will now do more accurate (but not precise) damage.
  • Pets should no longer attack feigned players and will no longer aggro on DoT ticks.
  • Unconscious, stunned, sitting, crouched, or feigned clients will no longer riposte.

Haynar

  • Players that have charmed mobs targeted, will no longer have their target go invalid after charm breaks. No more re-targeting required.
  • Fixed SE_Tossup on clients
  • Fixed some angles associated with spell pushback and pushup.
  • Fixed a couple of potential memory leaks.

Cavedude

  • Added NPC special attack to allow any NPC to use Warrior combat skills.

Database: Torven

  • Pet hp regen has been adjusted. Pets will also now regen in combat. (this went in with the hotfix but was not mentioned)
  • Some raid boss NPCs that are not warriors will now possess the warrior skills of dodge, parry, riposte, kick, and bash.
  • Outdoor Kunark dragons will now drop 3-4 items randomly and 2-5 spells randomly instead of always 4 and 4.
  • Trepidation removed from NPC spell sets, along with some other not-as-noteworthy spells.
  • Some group buff spells removed from NPC spell sets since NPCs don't cast them on others.
  • Several priority changes made to the enchanter and shaman default spell sets.
  • NPCs will no longer ignore charmed pet tanks after a certain number of entities get on their hate lists. This disables what was implemented in the previous patch.

Robregen

  • Replace roambox with Grids in Skyfire so mobs will no longer fall under the world.
  • Added a missing mob "a_goblin_fanatic" in Droga
  • add zol knights and kor shamans to the spawngroups near Sebilis Entrance.
  • all knights in Sebilis should now see invisible.
  • Pained soul and rotting skeleton should now be indifferent.
  • Adjusted respawntimer for Pained/PH to 6:30 to 7 minutes.
  • made some adjustment to Dark Elf Agnostic faction toward Arcane Scientist to be dubiiously.
  • Hunter and Forager should no longer be buffed to sow.
  • removed the phantom sword on goblin dirtscriber in Droga.
  • add idol of the underking to Slizik the mighty in hole.
  • add missing loot smoldering brand and adjust imbued granite spaulders on elementals in hole.
  • increase spawn chance to 5% on drolvarg captain in Karnor

Script Robregen

  • corrupted seafury cyclop should no longer despawn.
  • adjust faction hits or the investigator quest line.

11-8-2015

Code: Torven

  • Hotfix for AoE LoS checks in outdoor zones

Database: (non hotfix related) Robregen

  • zol, dar, bok, and krup knights in Sebilis will now see invisible.
  • increased the spawn chance for Glubbxink in Butcherblock.

11-4-2015 NERFING THe TECKNO VOX TRICK!?!?!!?