Changes
- 20-Jul-2026 Tijer - Added a new immortal command, hlist, which lists all help files and their required level in a two column layout.
- 21-Jul-2026 Tijer - Fixed a security hole in the world-building (OLC) editors: room/mob/object/area edit commands never checked whether you actually had permission to edit that area, meaning any builder could edit any area and grant themselves permanent access to it. Editing now requires proper builder rights, matching the check the resets command already had. Also fixed a crash bug in medit where creating a new mob could dereference a null pointer.
- 21-Jul-2026 Tijer - Fixed aedit builders: adding a new builder to an area used to wipe out every builder already listed there, replacing the whole list with just the new name. It now adds the new name alongside whoever was already there.
- 21-Jul-2026 Tijer - Added the ability to remove a builder from an areas builder list: aedit builders remove <name>. Previously there was no way to remove someone once added.
- 21-Jul-2026 Tijer - Performance fix: every time a player took a single step, the game was scanning every connected player on the whole server just to find the handful of people in the room who would see them leave or arrive. It now only checks the people actually in the room being left or entered.
- 21-Jul-2026 Tijer - Performance fix: the cat and dog pet special-procedures (spec_cat, spec_dog, spec_dog2) were scanning every single character object in the entire game world, every time they scratched at a closed door, just to whisper a flavor-text sound to nearby players in the same area. They now only check the list of actual connected players, which is far smaller. No visible change in behavior.
- 21-Jul-2026 Tijer - Fixed several commands that were missing the usual rank check: ban could be used against staff of equal or higher rank, hlset (Highlander admin editor) had no rank check at all, and reimb (XP/quest point grants) could be used against equal or higher rank. Also fixed empower and revoke, which only ever worked for one specific hardcoded account name instead of checking rank properly -- they now work for any Implementor, matching how every other top-level admin command already behaves.
- 21-Jul-2026 Tijer - Optimized the internal list code so adding mobs/objects/players no longer rescans the whole list each time - this cut copyover reboot time roughly 7x (the slowest part, reconnecting a player with a large inventory, dropped from over 7 seconds to about 15 milliseconds).
- 21-Jul-2026 Tijer - HEdit can now find and open a helpfile using any single word from its keyword list, not just the full exact keyword string.
- 21-Jul-2026 Tijer - Batch of small bug fixes: purple demon armor now correctly charges 250 quest points instead of 150; fixed a werewolf silver-weapon check that was never actually detecting wielded silver in combat; fixed a mage spell condition that was always treating a blank message as real; the artifact system now reads from the correct database table at boot; a config-save was writing one setting into the wrong column; the war-team roster announcement can no longer overflow with a large number of joiners; a string-replace helper no longer leaks memory when it finds nothing to replace; a flag constant that was corrupting unrelated data when set is now fixed; and two login-stage tracking IDs that were accidentally identical are now distinct.
