ACEmulator / ACE:
8 authors have pushed 226 commits to master
302 files have changed
45,764 additions
44,328 deletions
View Pulse
Changelog
A special thank you to all the players reporting bugs and feedback.
If you intend to submit a bug report please review how to collect Packet Captures
Notable Changes:
- Loot tier adjustments and updates from LSD
- Adjustments for loot tier 7
- Added new skills Gems of Enlightenment
- Added Enhanced Mana Elixir
- Added Redspire Portal Gem that uses newer LinkedPortalOne
- Updated new skills Wardens of Enlightenment to issue their gems
- Updated Enhanced Health Elixir
- Updated Sanamar Portal Gem to use newer LinkedPortalOne
- Updated 10 Friend & Foe kill task NPCs
- Updated Caliginous Aegis
- Updated Platinum Golem
- Updated Olthoi Slayer and Slasher Carapace and Ripper Spine
- Updated Collectors
- Updated Cave Penguin Egg
- Fixed recipe mods for keyrings
- Fixed some combat lockups after healing, particular with vtank + missile
- Fixed combining older bags of mahogany salvage
- Fixed monster retired skill #s
- Fixed slippery item drop / rares popping when looted
- Fixed spirit essence busy state
- Fixed /hr for some apartments
- Fixed summoned portal spawning
- Fixed equipped item overlap
- Fixed vendor overloads
- Fixed hotspot damage
- Fixed blank allegiance officer title crash w/ decal
- Fixed dispel filters
- Fixed apartment landblock loading speed
- Fixed boot command throwing exception when used at console
- Fixed a bug with disappearing icon when players give partial stacks
- Fixed gems not dropping in loot
- Fixed more issues with hotspots
- Fixed Olthoi Rippers spawning too many ninjas
- Fixed bug with players giving equipped items to other players
- Fixed allegiance ranks
- Fixed AnimationHook and GameActionChatChannel line endings in source repo
- Fixed some apartment bugs
- Fixed salvage workmanship bug
- Fixed player DoT damage history
- Fixed a bug with with kill tasks
- Fixed a bug with packet crafting during character creation
- Fixed a bug with scrolls and vtank
- Fixed the Mite Queen Staff to drop 1 instead of 250 and 1 Crumbled Note instead of 250
- Fixed some situations where multiple deaths could occur at the same time
- Fixed tinkering values with pine and gold material
- Fixed fellowship XP earning distance to be based on distance from XP earner, instead of leader
- Fixed skill credit refunds for untraining skills in Temple of Forgetfulness
- Fixed issue with attuned items being places in packs, packs placed in other containers
- Fixed double use issue on some containers
- Fixed issue with clapping motion repeating
- Fixed giving stackables to NPCs that accept everything (Town Criers, Garbage Barrels)
- Fixed giving or dropping packs with attuned items
- Fixed issues with crafting sending 0 burden to client
- Fixed mis-matched mana on lootgen’d missile weapons
- Fixed wonky mana on Missile weapons in LootGen
- Fixed quest names in San Ming’s emote table
- Fixed ClothingPriority on Olthoi Celdon armor
- Fixed issues with player corpse decay
- Fixed bug with picking up items from your own corpse, hooks or storage that had quest stamps
- Fixed bug with naked corpses not appearing correctly
- Fixed issue with non-player objects activating other non-player objects
- Fixed some issues with hotspots
- Fixed rapid player corpse decay upon server restart
- Fixed issue with npcs activating other objects
- Fixed bug with IDing items in Trade Window
- Fixed bug with trade causing receiver to turn to initiator when trade starts
- Fixed exit portal from Karlun’s Hall to remove level restriction
- Fixed Void Scriveners attacking
- Fixed reported issue with corpse at the end of the Lugian Ice Tunnels; ActivationResponse was incorrectly set to 1, instead of 2
- Fixed Nullified Statues
- Fixed issue with RealTime generators that have either no StartTime or EndTime set. (eg: Heart of the Innocent Event Gen)
- Fixed multiple death stacking. You can only die one time until you resurrect at lifestone
- Fixed issue with long chat messages
- Fixed SetSanctuaryPosition for Jonathan (29325) for Sanamar Academy instance
- Fixed minor issue with scrolls when IDing them
- Fixed major issue with recipes not scoping the requirements and mods to indexes which indicated where the checks or mods applied to
- Fixed OnDeath crash
- Fixed tells issue
- Fixed PK status for all objects on radar bug
- Fixed apartment issues for Empyreans
- Fixed network session multithreading
- Fixed a null crash with CombatPets
- Fixed corpse null exception
- Fixed landblock adjacency sync / visible objs
- Fixed RestrictionDB table size
- Fixed physics landblock memory leak
- Fixed an issue with ClassName writer
- Fixed allegiance sync bug
- Fixed GetVariance
- Fixed crash on null CurrentMotionState (statues).
- Fixed CraftTool weenies mistakenly marked as WeeniType.Generic instead of WeenieType.CraftTool
- Updated Tusker Guard loot tier profile to T4, up from T3, to match wiki
- Updated Atlan weenies
- Updated Healer messages and support for Stamina/Mana kits
- Updated Olthoi Swarm mobs for loot tier Updateds, per wiki
- Updated Olthoi Larvae body height entries
- Updated loot generator for light dagger / multistrike
- Updated two Facility Hub Wardens
- Updated Gem_MaterialType odds in loot gen
- Updated Ulgrim the Unpleasant’s location to AB
- Updated Ulgrim’s Recall scroll
- Updated Tusker Wish statues for MoA skills
- Updated Flinrala Ryndmad to once again hand out Facility Hub Portal gems
- Updated the Temples of Forgetfulness and Enlightenment
- Updated Marauder Eater to always drop jaw, up from zero chance
- Updated Base of the Timaru Plateau Portal to drop player near the NPC that sends the player to the top of the plateau
- Updated Jonathan’s emote table; token is attuned so cannot be lost. NPC doesn’t need to reissue token to player
- Updated landblocks in Stonehold, Nanto, and Tou-Tou-Tou
- Updated Gold Golem and Banderling Mauler to tier 5 loot profiles, per wiki, as other mobs still using former loot profile ID should remain as tier 4
- Updated generated loot values
- Updated spell component burn rate, and mana conversion for item spells
- Updated 2-handed weapon skill check
- Updated Mad Cow event
- Updated Storage permission error message
- Updated handling of scribe related functions
- Updated Enchantment Heartbeat to expire 0 duration spells
- Updated pickup timers for Grael’s Rage untranslated texts to align with info on wiki
- Updated three dungeon entry portals with quest restriction, as specified on portal text
- Updated three NPCs involved in Grael’s Rage quest to stamp and erase quest stamps, as appropriate
- Updated Generic and Stackable WeenieType
- Updated Soldier 31290 with Attackable false and Soldiers 31290, 70035, and 70036 with AiImmobile true
- Updated shutdown sequence to support notifications to players at intervals and adjusted shutdown lockout to apply when server is less than 3 minutes from shutdown
- Updated CreateList output to not sort by weenie class id
- Updated harm spell text color
- Updated UpdateMaxVital for some spells
- Updated SummonPortal for Gateways
- Updated DamageHistory to use WeakReference
- Updated fellowship to WeakReference
- Updated Player.Examine success conditions
- Updated kill tasks in fellowships
- Updated Event generators for two staged on/off
- Updated Crafting SQL Writer
- Updated null spell -> spell.NotFound
- Updated various log messages to Debug level
- Updated Generator.StopConditionsInit and StopConditionsMax log level
- Updated Generator.AddWorldObjectInternal failures to Debug
- Updated LSD converter to support enum shifting
- Added support for IOU trade ins
- Added possible fix for Mowen portal not spawning – IsBusy reset OnDeath
- Added Covenant Armor, default Material Type, and thrown weapons to loot
- Added allegiance name to appraisals
- Added caster effect to spells that have them
- Added door opening ability for some newer Olthoi
- Added rot after 5 minutes to player sold items on vendors
- Added rares to loot system
- Added support for Barber NPCs
- Added Shoichi for Tusker Guard KT to Lin
- Added support for new recipe formats
- Added support for broadcasting tinkering result message
- Added AttributeTransferDevice
- Added quest restrictions for summoned portals
- Added the ability for any player to loot monster corpses after 2 mins
- Added logging for player corpses
- Added /myquests player command, and quest_info_enabled admin option
- Added Mountain Sewer entry portal
- Added support for non-house owner rent payments
- Added Lifestone Sending spell
- Added some missing spawn maps: Mountain Sewer, new Yanshi town spawns, Keminub, Iaret, and Sacmisi
- Added support for prismatic arrows
- Added fellowship sharing to kill tasks
- Added prevention for being dropped into / through walls
- Added some null checks to try to catch issue with SelectDispel
- Added logging to Spell.Init
- Added warning to players about potential rollback issues when SaveBiota fails
- Added support for preloading landblock groups (Apartment Landblocks)
- Added check for RecallsDisabled to command recalls
- Added CraftTool WeenieType
- Added missing EncumbranceVal to Olthoi Amuli Armor
- Added text to corpses that generated rares
- Added Tomb Rubble weenie
- Added in use error message for some objects
- Added missing Missile DamageMod property for loot gen
- Added Void Gem of Enlightenment
- Added shirts and pants to loot drop
- Added new Fetish of the Dark Idol recipes for new TOD missile weapons
- Added missing Enhanced Isparian weapon recipes
- Added modified tinkering recipes
- Added Moina NPC
- Added Olthoi Amuli armor weenies
- Added Jaffres Dini’s spawn data to Sanamar
- Added Scrivener of the Void to Holtburg, Yaraq, Shoushi, and Sanamar locations
- Added Jacob’s Axe weenie for loot drop by Hard-Headed Skeleton
- Added the three Trade Alliance sub quest stub quest registry DB entries
- Added updated Free Ride to Sanamar spell (3535)
- Added missing Monster Fly Trap weenie
- Added Donatello Linante
- Added support for AwardXP emote taking away from available xp (Donatello Linante -> Asheron’s Lesser Benediction)
- Added rares to server logs
- Added disable_gateway_ties_to_be_summonable configurable option
- Added biota id:name to db
- Added in support to ACE.Adapter for converting GDLe recipes
- Added fix to prevent players from deceiving themselves
- Added more code protection for TOD salvage data
- Added null check to Corpse.Open
- Added busy check for food / consumables
- Added CanAddToInventory / pre-check for Player.Give
- Added more null checks to Fellowships, ConfirmationManager, and GetDeathMessage
- Added rollback mitigation for players receiving items from NPCs
- Added SpellbookCache
- Added WeakReference option to GfxObjCache
- Added missing WieldSkillType to loot generation factory melee weapons
- Added Treasure Material tables and Treasure Color tables to apply appropriate colors and materials to items in the LootGenerationFactory
- Added “lootgen” Developer Command to aid in testing the loot generator. Currently only applies materials and colors to items; no other properties factored in at this time
- Added GetBlockDist pre-check to IsDirectVisible()
- Added /ciloot dev command for RNG loot generation factory
- Reduced fizzle mana usage
- Changed Ruschk Iceberg Key from fixed spawn to generator based
- Remove extra Ianto and Lady of Aerlinthe’s Ornate Chest weenies
- Aligned Scroll loot with wiki
- Re-added random colors to clothing in loot gen
- Mosswart Worshipper Kill Task fix
- Refactored Elemental damage bonus
- Removing leader from disbanded fellowship
- Removed some incorrectly added thrown weapons from loot gen
- Sorting appraisal properties to better match up with client hashtables
- Ensuring self spells are never resisted
- Loot refactoring for clothing
- Removed bad keyring recipes
- Fixes for Give to Player issues: Send contents of a container when given, Return object to giver when it fails to be given
- Replaced character errors with confirmed list
- Creatures with loot and NoCorpse will drop their loot to the ground upon death
- AdjustCells cleanup
- Updating tinkering message to match retail, adding /cisalvage dev command
- Initial fix for item heartbeats
- Adjust wield requirements and method used
- Sequence validation and negative response
- Change weapon damage to be based on wield difficulty, instead of tier number
- Lower essence drop rate to ~17%
- Converted many magic numbers to descriptive, enum based values
- Changed shortcut code to fix some collision issues
- Clamping broadcast range on some recalls
- Improved monster ReturnHome logic
- Physics GC cleanup
- Synced WieldSkillType with WeaponType
- Move some messages to WorldBroadcast filter
- Remove PropertyInt 159 from base melee weapon weenies
- Remove two Encounter table entries, as they cause landscape mob spawns within Fort Tethana and the rebuilt Yanshi
- Landblock Dormancy after 1 min of no player activity
- Reduce rogue physics landblocks loaded by portal destination parsing
- Dispose ShardContext on RemoveBiota
- Send RestrictionDB in order of client hash
- Removed deprecated skill check formula
- Improved fellowship vital update rate / sync
- Ensuring BF_OPENABLE flag for inventory containers
- Fix body part heights of Fiun mobs
- Moved IsBusy check
- Session termination and boot command enhancement
- Adjusted grant level propotional xp
- Adjusted two-handed stance swapping / slots
- Removed slash animation from thrust weapons
- Ensuring impen/bane applies only to enchantable items
- More fixes for player corpse appearance issue
- Retry failed shard db queries
- More fellowship null checks
- More allegiance fixes
- Ensure cooldown spells aren’t evaluated for dispels
- Adjusted OnDeath to use LastDamager instead of foreach
- Network stability improvements
- Major refactoring to fellowships to fix concurrency issues
- Moved order-insensitive items earlier in packet processing pipeline
- Process inbound GameAction packets in order received
- Save Player Corpses if dropped.count > 0
- Reject new connections when server shuts down
- /serverperformance command added. Optional parameters: start, stop, reset
- Use ServerGarbageCollection instead of Workstation GC
- Change the way GiveObjecttoNPC and HandleNPCReceiveItem deal with emotes
- Exclude Cooldowns from HandleMaxVitalUpdate
- Physics memory related additions
- Fix session timeout values
- Code cleanup