v2017.11.19
MishimaHaruna
released this
19 Nov 20:09
·
4717 commits
to stable
since this release
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()
andsetunitdata()
with support forUDT_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()
andsetiteminfo()
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 toF_GetWeaponType()
for ammunitions. Both functions have now been updated to only check the subtype if the item type is correct (IT_AMMO
andIT_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()
andhas_instance2()
with suport to search instances of typeIOT_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()
andsetiteminfo()
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 clearMAX_SKILL_DB
, to be used in all places that use the compacted Skill DB array. For use with the non-compacted clientside Skill IDs, theMAX_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 theUF_NOOVERLAP
flag (Storm Gust, Lord of Vermillion, etc). (#1896) - Implemented MATK support in the
getiteminfo()
andsetiteminfo()
. 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()
andsetiteminfo()
. This functionality was lost with #1828. (part of #1902, issue #1895) - Reimplemented the global function
F_GetArmorType()
to reflect the fact thatITEMINFO_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
orMAX_ITEM_OPTIONS
are set to custom values. (part of #1901)