Rearrange your bag
You can now drag any item in your bag to any other slot, including empty ones, to organize your inventory exactly how you want it. Previously you could only swap two items directly; dropping an item on an empty slot did nothing.
Performance
Fixed the frame drops and stutters people have been reporting while walking around, blinking, casting spells, fighting groups of mobs, and auto-looting. The biggest cause was the map renderer keeping every chunk of the entire world map loaded onto the graphics card at once, rather than just the handful actually on screen, which used several gigabytes more graphics memory than it needed to. On graphics cards without room to spare, that caused the stalls, and they had nothing to do with mob count or spellcasting specifically, just camera movement and the graphics driver catching up. Chunks far from the camera are now unloaded and only the nearby ones kept resident, which brought graphics memory use down by several gigabytes with no visual difference, and the chunk we just walked into now loads in smoothly in the background instead of freezing the frame while it builds. A number of smaller things added up too:
The map renderer rechecked every chunk on the map, four times over, on every frame the camera moved, just to decide whether anything needed redrawing.
The minimap rebuilt its fog-of-war data and redrew itself twenty times a second while standing still.
Water tiles (ripples, splashes, fish) were checked every frame across the entire map, tens of thousands of them, regardless of whether any were on screen.
Mobs whose sprite set is missing an animation (a hurt or attack sheet, say) no longer re-check the filesystem for it every single time they change state. In a large pull that was a constant trickle of disk lookups on the main thread, and it scaled with the size of the pull.
Looting no longer rebuilds your entire bag from scratch. Every slot used to be torn down and recreated twice per pickup, which is why auto-looting on its own could drop frames. Only slots that actually changed are touched now.
The health, mana, food and experience readouts on the HUD only redraw when their values change, instead of 20 times a second regardless.
Server announcements
Server-wide announcements (like a reboot countdown) now stick around for anyone who logs in while they're still active, instead of only being seen by players who were already online when it was sent. A player who connects mid-countdown sees the correct time remaining, not the countdown restarted from the top. You can also click an announcement banner to dismiss it early if it's in your way.
Fixes
Hovering a buff/debuff icon (character panel, sidebar Buffs widget, or a party member's card) now shows a tooltip with a description of what it does, in addition to its remaining duration.
Fixed mobs walking onto and across staircase tiles; stairs now block mob pathing and movement like a wall (players are unaffected and can still use stairs normally).
Fixed the party invite popup not blocking movement and hotkeys — WASD and hotkey presses were leaking through to your character while the invite dialog was on screen.
Standing in a protection zone (town, bank, and other safe areas) now gives a small HP/MP regen bonus on top of regen from food. Still requires food in your meter to trigger, same as normal regen.
Added a "Report Name" option to the right-click menu on other players, so you can flag an offensive or inappropriate player name directly, not just a specific chat message.
Fixed spell damage not showing floating damage numbers or playing an impact sound. Auto-attacks and damage-over-time effects were unaffected, so only direct spell hits looked and sounded silent.
