From c1c8d6b7424b6673bd444b0905171c06602feaa4 Mon Sep 17 00:00:00 2001 From: Haru Date: Sun, 19 Nov 2017 20:37:50 +0100 Subject: Release v2017.11.19 Signed-off-by: Haru --- CHANGELOG.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b1745233..d85d2c689 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,46 @@ and this project does not adhere to [Semantic Versioning](http://semver.org/spec If you are reading this in a text editor, simply ignore this section --> +## [v2017.11.19] `November 19 2017` +### Added +- Added several missing members to the login interface. (Part of #1891) +- Added support for colored character server population counter in the service selection list. Configurable through `users_count` in login-server.conf. (#1891) +- Added top-level command `miniboss_monster` to label monsters as minibosses, and to send them as such to the client. (part of #1889) +- Added support for 2017-10-25 - 2017-11-01 clients. (#1889) +- Added support to display NPCs with player classes, including equipment and styles (best with clients starting from 20170726). This extends `getunitdata()` and `setunitdata()` with support for `UDT_SEX`, `UDT_HAIRSTYLE`, `UDT_HAIRCOLOR`, `UDT_HEADBOTTOM`, `UDT_HEADMIDDLE`, `UDT_HEADTOP`, `UDT_CLOTHCOLOR`, `UDT_SHIELD`, `UDT_WEAPON`, `UDT_ROBE`, `UDT_BODY2`. (#1893) +- Added type constants for the `getiteminfo()` and `setiteminfo()` script commands. Existing third party code must be updated to use the new constants (see the pull request description and the command documentation for details). (#1902) +- Added global function `F_GetAmmoType()`, counterpart to `F_GetWeaponType()` for ammunitions. Both functions have now been updated to only check the subtype if the item type is correct (`IT_AMMO` and `IT_WEAPON` respectively). (part of #1902) +- Added support for the Skill Scale packet, available in client versions 20151223 and newer. (#1903) + +### Changed +- Applied script standardization to the Octopus Cave instance script. (#1882) +- Applied script standardization to the Ghost Palace instance script. (#1879) +- Applied script standardization to the Sara's Memory instance script. (#1884) +- Extended the script command `setequipoption()` with the possibility to remove item options from an equipment piece. (#1865) +- Updated the `QTYPE_*` constants (`questinfo()`, `showevent()`) to support the new 2017 client icons. (#1894) +- Applied script standardization to the Orc's Memory instance script. (#1872) +- Applied script standardization to the Sealed Shrine instance script. (#1873) +- Extended the global function `F_GetArmorType()` to support costumes and shadow equipment. (#1836) +- Extended the script commands `has_instance()` and `has_instance2()` with suport to search instances of type `IOT_NONE`. (#1397) +- Applied script standardization and improvements to the Endless Tower instance script. (#1862) +- Cleared some confusion between skill IDs and indexes through the codebase. Rewritten Skill DB accessors in a safer, more readable way. (part of #1896) + +### Deprecated +- The use of numeric type constants with `getiteminfo()` and `setiteminfo()` is deprecated. For technical reasons, no deprecation notice is displayed. (part of #1902) + +### Removed +- The `MAX_SKILL` constant has been removed, in favor of the more clear `MAX_SKILL_DB`, to be used in all places that use the compacted Skill DB array. For use with the non-compacted clientside Skill IDs, the `MAX_SKILL_ID` constant is still available. (part of #1896) + +### Fixed +- Fixed compilation warnings when compiling with gcc-7. (#1887) +- Fixed the display flag for monsters labeled as `boss_monster` to be that of MVP monsters instead of miniboss monsters. (part of #1889) +- Fixed a subtle error in case `skill->unit_group_newid` overflows, causing certain skill unit entries to get stuck and never get deleted correctly. This can manifest itself with some monster spawns becoming immune to certain AoE spells having the `UF_NOOVERLAP` flag (Storm Gust, Lord of Vermillion, etc). (#1896) +- Implemented MATK support in the `getiteminfo()` and `setiteminfo()`. This functionality was previously advertised as availble in the command documentation, but was not implemented. (part of #1902) +- Restored View Sprite support in the `getiteminfo()` and `setiteminfo()`. This functionality was lost with #1828. (part of #1902, issue #1895) +- Reimplemented the global function `F_GetArmorType()` to reflect the fact that `ITEMINFO_LOC` returns a bitmask. The function now handles multi-slot headgears and other uncommon cases better. (part of #1902) +- Corrected some incorrect data types passed to the SQL `StmtBind` functions, causing query errors and data loss. Said functions will now have a runtime assertion to ensure the right data type is passed. Third party code needs to be updated to reflect this stricter requirement. (#1901, issue #1531) +- Corrected some RODEX related queries in case `MAX_SLOTS` or `MAX_ITEM_OPTIONS` are set to custom values. (part of #1901) + ## [v2017.10.22-1] `October 22 2017` `PATCH 1` ### Fixed - Fixed a wrong null pointer check in `logmes()`, which caused the command to never log and instead print debug information. @@ -36,5 +76,6 @@ If you are reading this in a text editor, simply ignore this section - New versioning scheme and project changelogs/release notes (#1853) [Unreleased]: https://github.com/HerculesWS/Hercules/compare/stable...master +[v2017.11.19]: https://github.com/HerculesWS/Hercules/compare/v2017.10.22-1...v2017.11.19 [v2017.10.22-1]: https://github.com/HerculesWS/Hercules/compare/v2017.10.22...v2017.10.22-1 [v2017.10.22]: https://github.com/HerculesWS/Hercules/compare/6b1fe2d...v2017.10.22 -- cgit v1.2.3-60-g2f50