Releases: HerculesWS/Hercules
Releases · HerculesWS/Hercules
v2024.10
Changed
- Changed the
getmobdrops()
script command to avoid the use of global temporary variables. (#3319)- The caller now specifies an array that will be filled with the requested data.
- The amount of filled entries will be returned as the command's return value. The caller should only read up to that amount of entries from the array, as it may contain previous leftover values past that point.
- See the script_commands documentation for further details.
- Improved the output of the
@mobinfo
atcommand to include item links for the mob drops, on clients that support it. Unsupported clients will gracefully fall back to just printing the names. #3328 - Improved the output of the
@iteminfo
atcommand to include item links, on clients that support it. Unsupported clients will gracefully fall back to just printing the names. #3329
v2024.10 (Rebalance edition)
General changes
- See the associated release https://github.com/HerculesWS/Hercules/releases/tag/v2024.10
Rebalance changes
- There were no rebalance-specific changes in this release.
- See also the list of changes from the previous rebalance release https://github.com/HerculesWS/Hercules/releases/tag/v2024.09-rebalance
v2024.09
Added
- Implemented the script command
getunitparam()
to query values defined inunit_parameters_db.conf
, and the relatedUNIT_PARAM_*
constants. See thescript_commands.txt
documentation for usage details. (#3323) - Added validation of the name length for configuration entries added through the HPM
addBattleConf()
,addLoginConf()
,addCharConf()
,addCharInterConf()
,addLogConf()
,addScriptConf()
methods, to prevent silent truncation. (#3324)
Fixed
v2024.09 (Rebalance edition)
General changes
- See the associated release https://github.com/HerculesWS/Hercules/releases/tag/v2024.09
Rebalance changes
- There were no rebalance-specific changes in this release.
- See also the list of changes from the previous rebalance release https://github.com/HerculesWS/Hercules/releases/tag/v2024.08-rebalance
v2024.08
Changed
- Converted packets
CHARLOGIN_ONLINE_ACCOUNTS
,MAPCHAR_AUTH_REQ
,CHARLOGIN_SET_ACCOUNT_ONLINE
to the struct format. (#3304, #3312, #3314) - Excluded the standalone (i.e. autotrader) characters from those sent to the API server. (#3314, issue #3306)
- Changed the
getpartymember()
script command to avoid the use of global temporary variables. (#3305, #3307, #3308, #3315)- The caller now specifies an array that will be filled with the requested data.
- The amount of filled entries will be returned as the command's return value. The caller should only read up to that amount of entries from the array, as it may contain previous leftover values past that point.
- Added constants for specifying the requested data:
PT_MEMBER_NAME
,PT_MEMBER_CHARID
,PT_MEMBER_ACCID
. - See the script_commands documentation for further details.
- The included scripts have been updated with the new syntax.
- Changed the
getguildmember()
script command to avoid the use of global temporary variables. (#3310, #3311, #3318)- The caller now specifies an array that will be filled with the requested data.
- The amount of filled entries will be returned as the command's return value. The caller should only read up to that amount of entries from the array, as it may contain previous leftover values past that point.
- Added constants for specifying the requested data:
GD_MEMBER_NAME
,GD_MEMBER_CHARID
,GD_MEMBER_ACCID
. - See the script_commands documentation for further details.
- Reduced timeout for the GitHub Actions CI builds to 30 minutes, to prevent stuck jobs from stalling the entire pipeline for too many hours. (#3317)
Fixed
- Fixed a packet reading error causing the list of online characters on char and login server to desynchronize and invalidate the API server tokens. (#3304)
- Fixed CI builds failing due to the MariaDB client attempting to connect to the server with SSL. (#3313)
- Fixed the hwsapi commits failing because of an expired GPG key.
- Fixed HPMDataCheck containing incomplete data because of a missing include in the headers that use the
DEFINE_PACKET_ID
macro. (#3314) - Updated the mapcache entry for
iz_ac02
(renewal-only content) to a 2012 version compatible with the included scripts. (#3316, issue #2809) - Fixed deprecation warnings in the GitHub Actions CI builds caused by the use of unsupported nodejs v16 actions. The actions have been upgraded to their nodejs v20 versions as recommended by GitHub. (#3317)
- Fixed a deprecation warning in the GitHub Actions macOS CI builds due to a packet that was renamed. (#3317)
Deprecated
- Deprecated building on GCC versions older than 7. This has been the case for at least 4 months according to the Supported Platforms rules, but this is the official deprecation warning. Support macros and workarounds will be dropped from the code at some point in the future. (#3317)
Removed
- Removed GitHub Actions workflows that don't support nodejs v20. This includes the test builds for gcc-4.8, gcc-5 and gcc-6, which have been unsupported by Hercules for at least 4 months. (#3317)
v2024.08 (Rebalance edition)
General changes
- See the associated release https://github.com/HerculesWS/Hercules/releases/tag/v2024.08
Rebalance changes
- There were no rebalance-specific changes in this release.
- See also the list of changes from the previous rebalance release https://github.com/HerculesWS/Hercules/releases/tag/v2024.06-rebalance
v2024.06 (Rebalance edition)
General changes
- See the associated release https://github.com/HerculesWS/Hercules/releases/tag/v2024.06
Rebalance changes
- All these changes only affect Renewal. Pre-renewal is unchanged, unless otherwise stated.
- This includes the changes from the previous rebalance release https://github.com/HerculesWS/Hercules/releases/tag/v2024.05-rebalance
2-2 Classes (continued)
- Rebalance of the 2-2 job skills, implementation based on kRO and kRO zero patch notes from 2018-10-31, iRO Wiki, rAthena and divine pride info, along with some in-game testing. (#3229, #3230, #3253, #3279, part of issue #2727)
Sage
- Rebalance of
SA_VOLCANO
(Volcano)- Requirement changed: Yellow Gemstone -> Blue Gemstone
- Effect changed:
- Old: ATK
+(SkillLevel x 10)
- New: ATK/MATK
+(5 + (Skill Level x 5))
- Old: ATK
- Rebalance of
SA_DELUGE
(Deluge)- Requirement changed: Yellow Gemstone -> Blue Gemstone
- Rebalance of
SA_VIOLENTGALE
(Whirlwind)- Requirement changed: Yellow Gemstone -> Blue Gemstone
- Rebalance of
SA_FLAMELAUNCHER
(Endow Blaze)- Fixed casting time reduced:
3
s ->1
s - Variable casting time added:
1
s - Requirement changed to Scarlet Point
- Now increases corresponding element magical damage by
1%
per skill level - Removed skill failure chance
- Changed duration
- Old:
20
minutes (Level 1 ~ 4),30
minutes (Level 5) - New:
5 x (Skill Level + 1)
minutes
- Old:
- Fixed casting time reduced:
- Rebalance of
SA_FROSTWEAPON
(Endow Tsunami)- Fixed casting time reduced:
3
s ->1
s - Variable casting time added: 1s
- Requirement changed to Indigo Point
- Now increases corresponding element magical damage by
1%
per skill level - Removed skill failure chance
- Changed duration
- Old:
20
minutes (Level 1 ~ 4),30
minutes (Level 5) - New:
5 x (Skill Level + 1)
minutes
- Old:
- Fixed casting time reduced:
- Rebalance of
SA_LIGHTNINGLOADER
(Endow Tornado)- Fixed casting time reduced:
3
s ->1
s - Variable casting time added:
1
s - Requirement changed to Yellow Wish Point
- Now increases corresponding element magical damage by
1%
per skill level - Removed skill failure chance
- Changed duration
- Old:
20
minutes (Level 1 ~ 4),30
minutes (Level 5) - New:
5 x (Skill Level + 1)
minutes
- Old:
- Fixed casting time reduced:
- Rebalance of
SA_SEISMICWEAPON
(Endow Quake)- Fixed casting time reduced:
3
s ->1
s - Variable casting time added:
1
s - Requirement changed to Lime Green Point
- Now increases corresponding element magical damage by
1%
per skill level - Removed skill failure chance
- Changed duration
- Old:
20
minutes (Level 1 ~ 4),30
minutes (Level 5) - New:
5 x (Skill Level + 1)
minutes
- Old:
- Fixed casting time reduced:
- Rebalance of
SA_AUTOSPELL
(Hindsight)- Autocast level changed
- Old: The Bolt skills will vary in level from level 1 to 3
- The level 1 version will occur
50%
of the time, level 235%
, and level 3 at15%
- The level 1 version will occur
- New: Levels of autocasted spells is the half of Hindsight level.
- If autocasted spells has lower level than half of Hindsight levels, actual skill level will be autocasted instead.
- Old: The Bolt skills will vary in level from level 1 to 3
- Autocast chance changed
- Old:
7%
-25%
- New:
(Skill Level x 2)%
- Old:
- Usable skills changed
- Old: Napalm Beat, Fire Bolt, Cold Bolt, Lightning Bolt, Soul Strike, Fire Ball, Frost Diver
- New: Fire Bolt, Cold Bolt, Lightning Bolt, Soul Strike, Fire Ball, Earth Spike, Frost Diver, Thunderstorm, Heaven's Drive
- Note: for compatibility with older clients that don't support more than 7 skills at once, the pre-renewal
autospell_db
will be loaded instead, when such packetvers are in use. This behavior can be enforced by defining theCLASSIC_AUTOSPELL_LIST
preprocessor macro (seesrc/config/classes/general.h
).
- Autocast level changed
Monk
- Weapon modifier changes
- Changed the size penalty for Knuckles
- Small: 100% -> 100%
- Medium: 75% -> 100%
- Large: 50% -> 75%
- Changed the size penalty for Knuckles
- Rebalance of
MO_TRIPLEATTACK
(Raging Trifecta Blow)- Chance of activation changed:
- Old:
30%
for level 1, less chance for each level above - New: Always
30%
- Old:
- Chance of activation changed:
- Rebalance of
MO_CHAINCOMBO
(Raging Quadruple Blow)- SP cost reduced by
6
in every level - When used with Knuckle class weapon:
- Skill damage is doubled
- Number of hits increased to
6
(visual only)
Example:- Non Knuckle:
4
hits of100
(Total =400
) - Knuckle:
6
hits of133
(Total =800
)
- Non Knuckle:
- SP cost reduced by
- Rebalance of
MO_COMBOFINISH
(Raging Thrust)- Damage formula changed
- Old:
(240 + SkillLevel * 60)%
- New:
(450 + SkillLevel * 150 + STR * 5)%
- Old:
- SP Consumption reduced
- Old:
SkillLevel + 10
- New:
SkillLevel + 2
- Old:
- Damage formula changed
- Rebalance of
MO_EXTREMITYFIST
(Asura Strike)- Change required spheres when used after Raging Thrust or Root
- Old:
4
spheres were required - New:
1
sphere is required
- Old:
- Doubles damage when there are
6
or more spirit spheres on cast - SP recovery penalty duration reduced:
10
s ->3
s
- Change required spheres when used after Raging Thrust or Root
- Rebalance of
MO_BLADESTOP
(Root)- Cooldown added:
3
s - Boss monsters are now affected
- Duration changed:
- Old:
10 + (SkillLevel * 10)
seconds - New:
10
seconds (2
seconds on boss monsters)
- Old:
- Cooldown added:
- Rebalance of
MO_INVESTIGATE
(Occult Impact)- Damage formula changed
- Old:
100 + (SkillLevel * 75)%
- New:
(SkillLevel * 100)%
- When used on target in Root state, deals
50%
more damage - ATK Mastery no longer increases its damage (Not sure if this was added by the Rebalance, but this info only appeared in iRO Wiki after rebalance, so it is assumed it was an undocumented change)
- A fix for the base ATK (before skill ratio) is included:
(ATK + (HardDef/2))
- Old:
- Damage formula changed
- Rebalance of
MO_FINGEROFFENSIVE
(Throw Spirit Sphere)- Damage formula changed
- Old:
(Spirit Spheres x 350)%
- New:
[600 + (Skill Level x 200)]%
- Old:
- Casting time changed
- Old:
(Spirit Spheres + 1)
seconds - New:
0.5
seconds fixed casting time +0.5
seconds variable casting time
- Old:
1
second cooldown added- SP cost increased
- Old:
10
at all skill levels - New:
8 + (Skill Level x 4)
- Old:
- Spirit sphere usage changed
- Old:
(Skill Level)
spheres - New:
1
sphere at all skill levels
- Old:
- Skill will deal
50%
more damage on target caught with Root - The damage is delivered as a bundle of
5
hits(TotalDMG / 5)
- Damage formula changed
- Rebalance of
MO_ABSORBSPIRITS
(Absorb Spirit Sphere)- Reduced fixed casting time:
1
s ->0.5
s - Removed variable casting time
- Reduced fixed casting time:
Bard / Dancer
- Added song groups for Bard/Dancer songs
- Song effects are now grouped and songs of the same group doesn't overlap with each other. Activating a new effect of the same group ends other existing effects.
- There are 3 groups:
- Bard songs -- song buffs exclusive to bards
- Dancer songs -- song buffs exclusive to dancers
- Ensemble songs -- song buffs exclusive to ensemble
- Rebalance of
BA_MUSICALSTRIKE
(Melody Strike) andDC_THROWARROW
(Slinging Arrow)- Damage formula changed
- New:
[110 + (Skill Level x 40)]%
x2
hits
- New:
- SP cost changed
- Old:
(Skill Level × 2) - 1
- New:
12
at all skill levels
- Old:
- Casting time reduced:
1.5
s ->0.5
s (Based on DivinePride data - see details in the PR and commit messages)- Fixed Cast Time of
0.3
s remains untouched - Variable Cast Time reduced
1.2
s ->0.2
s
- Fixed Cast Time of
- Global skill delay added:
0.3
s
- Damage formula changed
- Rebalance of
BA_MUSICALLESSON
(Music Lessons)- Add effect: Attack Speed
+(Skill_Lv)%
with Musical Instruments - Add effect: Max SP
+(Skill_Lv)%
- No longer gives bonuses to song effects
- Add effect: Attack Speed
- Rebalance of
DC_DANCINGLESSON
(Dance Lessons)- Add effect: Max SP
+(Skill_Lv)%
- Add effect: When using Whips, CRI
+(Skill_Lv)
- No longer gives bonuses to dance effects
- Add effect: Max SP
- Rebalance of
BA_FROSTJOKE
(Unbarring Octave)- Global skill delay reduced:
4
s ->0.3
s 4
s Cooldown added
- Global skill delay reduced:
- Rebalance of
BD_ENCORE
(Encore)- Added
0.3
s of global skill delay - Added
10
s of cooldown
- Added
- Rebalance of
BA_DISSONANCE
(Unchained Serenade)- Skill reworked.
- Now causes Neutral Magical damage in a
9x9
area - Can only be used in PvP areas
- Now causes Neutral Magical damage in a
0.3
s of global delay added5
s of cooldown added- SP cost changed
- Old:
15 + (SkillLv) x 3
- New:
32 + (SkillLv) x 3
- Old:
- Skill reworked.
- Rebalance of
BA_POEMBRAGI
(Magic Strings)- Skill reworked:
- It is now a screen-wide skill (
31x31
) that gives the SC to all party members - It no longer uses ground units nor keeps the "performance running"
- It is now a screen-wide skill (
- Effect formula changed:
- Variable cast reduction:
(SkillLv)%
- Cast delay reduction:
(SkillLv x 3)%
- Caster stats and Music Lessons no longer affects the formula
- Variable cast reduction:
- Effect duration changed:
180
s ->60
s - SP Cost changed:
- Old:
35 + (SkillLv x 5)
- New:
60 + (SkillLv x 5)
- Old:
1
s casting time added0.5
s global delay added20
s cooldown added
- Skill reworked:
- Rebalance of
BA_ASSASSINCROSS
(Impressive Riff)- Skill reworked:
- It is now a screen-wide skill (
31x31
) that gives the SC to all party members - It no longer uses ground units nor keeps the "performance running"
- It is now a screen-wide skill (
- Effect formula changed:
- ASPD:
- when SkillLv < 10:
+(1 + ((SkillLv - 1) x 2))%
- when SkillLv = 10:
+20%
- Caster stats and Music Lessons no longer affects the formula
- when SkillLv < 10:
- ASPD:
- Effect duration changed:
180
s ->60
s - SP Cost changed:
- Old:
35 + (SkillLv x 5)
- New:
60 + (SkillLv x 5)
- Old:
1
s casting time added0.5
s global delay added20
s cooldown added
- Skill reworked:
- Rebalance of
BA_APPLEIDUN
(Song of Lutie)- Skill reworked:
- It is now a screen-wide skill (
31x31
) that g...
- It is now a screen-wide skill (
- Skill reworked:
v2024.06
Notes on the rebalance branch
Work on the rebalance
branch is continuing and the v2024.06-rebalance
release includes the 1-1, 2-1 and 2-2 skills. The branch will not be merged into master/stable until it is fully consistent, including the transcendent skills. The branch gets re-aligned with a merge from stable
after each month's release, so it is always up to date, for those that wish to test the Rebalance mechanics early (and provide feedback were any issues to arise).
Added
- Added the
mesnavigation()
script command, to generate navi tags valid for the current packetver. (#3300) - Added the
mesmobspawn()
script command, to generate navi tags valid for the current packetver. (#3300) - Added the
mesurl()
script command, to generate clickable URL tags valid for the current packetver. (#3300) - Added the
mestipbox()
script command, to generate tipbox tags valid for the current packetver. (#3300)
Changed
- Refactored the Plagiarism/Reproduce skill tracking logic and removed some code duplication. (part of #3298)
- Replaced the use of hardcoded
<NAVI>
tags in scripts withmesnavigation()
calls. (#3300)
Fixed
v2024.05
Changed
- Implemented official ATK % calculation for
BS_OVERTHRUST
in pre-renewal. Party members only receive 5% ATK bonus. (#3293)
Fixed
- Fixed a missing initialization of the (m)atk/(m)def modifiers, resulting into 0 or 1 damage. (#3293, related to #3290)
- Fixed an incorrect call of
clif->updatestatus()
to non-player objects in relation to atk/def percent bonuses. (#3294, related to #3290) - Fixed a failure on SCs from skills that don't have a
StatusChange
entry in their skill db entries after a@reloadskilldb
, such as the spirit skills. (#3296, issue #3295) - Fixed a compiler warning due to a missing case label when
SECURE_NPCTIMEOUT
is enabled. (#3297, issue #3197)
Other
- Work on the rebalance patch is continuing on the rebalance branch.
v2024.05 (Rebalance edition)
General changes
- See the associated release https://github.com/HerculesWS/Hercules/releases/tag/v2024.05
Rebalance changes
- All these changes only affect Renewal. Pre-renewal is unchanged, unless otherwise stated.
- This includes the changes from the previous rebalance release https://github.com/HerculesWS/Hercules/releases/tag/v2024.04-rebalance
2-2 Classes
- Rebalance of the 2-2 job skills, implementation based on kRO and kRO zero patch notes from 2018-10-31, iRO Wiki, rAthena and divine pride info, along with some in-game testing. (#3229, part of issue #2727)
Crusader
- Rebalance of
CR_GRANDCROSS
(Grand Cross)- Fixed casting time changed:
1.5
s ->0.5
s - Variable casting time changed:
1.5
s ->1
s - Global delay changed:
1.5
s ->0.5
s 1
s cooldown added- Self damage is removed
- Fixed casting time changed:
- Rebalance of
CR_SHIELDBOOMERANG
(Shield Boomerang)- Damage formula changed
- Old: ATK
(100 + 30 x SkillLevel)%
(Shield weight gives extra flat damage) - Now: ATK
(80 x SkillLevel + Shield Weight + Shield Upgrade x 4)%
- Old: ATK
- Damage formula changed
- Rebalance of
CR_SPEARQUICKEN
(Spear Quicken)- Additionally gives
+10%
of Equipment ASPD
- Additionally gives
Alchemist
- Rebalance of
AM_DEMONSTRATION
(Bomb)- Chance of breaking target weapon increased
- Old:
SkillLevel %
- New:
(3 x SkillLevel)%
- Old:
- It now uses basic/default melee damage calculation (instead of special formula)
- Damage formula changed:
- Old:
[100% + (Skill Level x 20)]%
(ATK + MATK) - New:
[(Skill Level x 60) + (Potion_Research_Lv x 10)]%
ATK
- Old:
- Note: the skill code was refactored to move the chance to break the enemy weapon to the
SkillData2
field of the skill DB (affecting both renewal and pre-renewal)
- Chance of breaking target weapon increased
- Rebalance of
AM_ACIDTERROR
(Acid Terror)- Chance of breaking target armor increased
- Old:
3
/7
/10
/12
/13
% - New:
5
/15
/25
/35
/45
%
- Old:
- It now uses basic/default ranged physical damage calculation (instead of special formula)
- Damage formula changed:
- Old:
[200% + (Skill Level x 80)]%
(ATK + MATK) - New:
[(Skill Level x 200) + (Potion_Research_Lv x 100)]%
ATK
- Old:
- The damage effect has been corrected (renewal only) and it is now applied in a bundle of 5 hits instead of a single damage
- Chance of breaking target armor increased
Rogue
- Rebalance of
RG_RAID
(Sightless Mind)- SP cost reduced:
20
->15
- Damage increased
- Old:
[100 + (Skill Level x 40)]%
- New:
[50 + (Skill Level x 150)]%
- Old:
- Damage debuff changed
- Old:
20%
more damage for5
seconds or7
hits - New:
30%
more damage (15%
on boss monsters) for10
seconds
- Old:
- SP cost reduced:
- Rebalance of RG_BACKSTAP (Back Stab)
- Skill mechanics changed
- No longer needs to be behind the target to use skill
- No longer ignores accuracy check
- No longer usable from Hiding state
- Now increases skill Hit by 4 per skill level
- Number of hits changed:
- Old:
1
hit - New:
2
hits with Dagger,1
hit with other weapons
- Old:
- SP cost reduced:
16
->12
- Cooldown added:
0.5
s - Number of hits changed
- The bow damage formula has been corrected (affecting both renewal and pre-renewal). Incorrectly, only part of the skillratio value was getting halved when using bows, disregarding the base 100% value.
- Skill mechanics changed
- Rebalance of
RG_PLAGIARISM
(Intimidate)- Also increases Attack Speed by
1%
per Skill Level
- Also increases Attack Speed by