Skip to content

Releases: HerculesWS/Hercules

v2024.10

31 Oct 23:38
484691a
Compare
Choose a tag to compare

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)

31 Oct 23:39
3a3482a
Compare
Choose a tag to compare
Pre-release

General changes

Rebalance changes

v2024.09

30 Sep 23:36
84da0df
Compare
Choose a tag to compare

Added

  • Implemented the script command getunitparam() to query values defined in unit_parameters_db.conf, and the related UNIT_PARAM_* constants. See the script_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

  • Fixed an issue causing item-granted skills that were overriding an existing skill level, not to be correctly cleared when unequipping the item. (#3322)
  • Fixed previously plagiarized skills re-appearing on subsequent logins due to the related script variables not getting cleared properly. (#3325)

v2024.09 (Rebalance edition)

30 Sep 23:38
e83b97c
Compare
Choose a tag to compare
Pre-release

General changes

Rebalance changes

v2024.08

31 Aug 23:39
71fc107
Compare
Choose a tag to compare

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)

31 Aug 23:46
Compare
Choose a tag to compare
Pre-release

General changes

Rebalance changes

v2024.06 (Rebalance edition)

01 Jul 00:29
7883a7d
Compare
Choose a tag to compare
Pre-release

General changes

Rebalance changes

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))
  • 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
  • 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
  • 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
  • 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
  • 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 2 35%, and level 3 at 15%
      • 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.
    • Autocast chance changed
      • Old: 7% - 25%
      • New: (Skill Level x 2)%
    • 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 the CLASSIC_AUTOSPELL_LIST preprocessor macro (see src/config/classes/general.h).
Monk
  • Weapon modifier changes
    • Changed the size penalty for Knuckles
      • Small: 100% -> 100%
      • Medium: 75% -> 100%
      • Large: 50% -> 75%
  • 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%
  • 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 of 100 (Total = 400)
        • Knuckle: 6 hits of 133 (Total = 800)
  • Rebalance of MO_COMBOFINISH (Raging Thrust)
    • Damage formula changed
      • Old: (240 + SkillLevel * 60)%
      • New: (450 + SkillLevel * 150 + STR * 5)%
    • SP Consumption reduced
      • Old: SkillLevel + 10
      • New: SkillLevel + 2
  • 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
    • Doubles damage when there are 6 or more spirit spheres on cast
    • SP recovery penalty duration reduced: 10 s -> 3 s
  • 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)
  • 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))
  • Rebalance of MO_FINGEROFFENSIVE (Throw Spirit Sphere)
    • Damage formula changed
      • Old: (Spirit Spheres x 350)%
      • New: [600 + (Skill Level x 200)]%
    • Casting time changed
      • Old: (Spirit Spheres + 1) seconds
      • New: 0.5 seconds fixed casting time + 0.5 seconds variable casting time
    • 1 second cooldown added
    • SP cost increased
      • Old: 10 at all skill levels
      • New: 8 + (Skill Level x 4)
    • Spirit sphere usage changed
      • Old: (Skill Level) spheres
      • New: 1 sphere at all skill levels
    • Skill will deal 50% more damage on target caught with Root
    • The damage is delivered as a bundle of 5 hits (TotalDMG / 5)
  • Rebalance of MO_ABSORBSPIRITS (Absorb Spirit Sphere)
    • Reduced fixed casting time: 1 s -> 0.5 s
    • Removed variable 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:
      1. Bard songs -- song buffs exclusive to bards
      2. Dancer songs -- song buffs exclusive to dancers
      3. Ensemble songs -- song buffs exclusive to ensemble
  • Rebalance of BA_MUSICALSTRIKE (Melody Strike) and DC_THROWARROW (Slinging Arrow)
    • Damage formula changed
      • New: [110 + (Skill Level x 40)]% x 2 hits
    • SP cost changed
      • Old: (Skill Level × 2) - 1
      • New: 12 at all skill levels
    • 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
    • Global skill delay added: 0.3 s
  • 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
  • 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
  • Rebalance of BA_FROSTJOKE (Unbarring Octave)
    • Global skill delay reduced: 4 s -> 0.3 s
    • 4 s Cooldown added
  • Rebalance of BD_ENCORE (Encore)
    • Added 0.3 s of global skill delay
    • Added 10 s of cooldown
  • Rebalance of BA_DISSONANCE (Unchained Serenade)
    • Skill reworked.
      • Now causes Neutral Magical damage in a 9x9 area
      • Can only be used in PvP areas
    • 0.3 s of global delay added
    • 5 s of cooldown added
    • SP cost changed
      • Old: 15 + (SkillLv) x 3
      • New: 32 + (SkillLv) x 3
  • 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"
    • Effect formula changed:
      • Variable cast reduction: (SkillLv)%
      • Cast delay reduction: (SkillLv x 3)%
      • Caster stats and Music Lessons no longer affects the formula
    • Effect duration changed: 180 s -> 60 s
    • SP Cost changed:
      • Old: 35 + (SkillLv x 5)
      • New: 60 + (SkillLv x 5)
    • 1 s casting time added
    • 0.5 s global delay added
    • 20 s cooldown added
  • 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"
    • 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
    • Effect duration changed: 180 s -> 60 s
    • SP Cost changed:
      • Old: 35 + (SkillLv x 5)
      • New: 60 + (SkillLv x 5)
    • 1 s casting time added
    • 0.5 s global delay added
    • 20 s cooldown added
  • Rebalance of BA_APPLEIDUN (Song of Lutie)
    • Skill reworked:
      • It is now a screen-wide skill (31x31) that g...
Read more

v2024.06

30 Jun 23:18
5f7eaa4
Compare
Choose a tag to compare

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 with mesnavigation() calls. (#3300)

Fixed

  • Fixed the copy of one's own skills via Plagiarim or Reproduce causing the skill and its requirements to be deleted. (#3298, issue #3289)

v2024.05

25 May 15:06
7312ec2
Compare
Choose a tag to compare

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)

25 May 15:35
6dfc58c
Compare
Choose a tag to compare
Pre-release

General changes

Rebalance changes

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
  • 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)%
  • Rebalance of CR_SPEARQUICKEN (Spear Quicken)
    • Additionally gives +10% of Equipment ASPD
Alchemist
  • Rebalance of AM_DEMONSTRATION (Bomb)
    • Chance of breaking target weapon increased
      • Old: SkillLevel %
      • New: (3 x SkillLevel)%
    • 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
    • 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)
  • Rebalance of AM_ACIDTERROR (Acid Terror)
    • Chance of breaking target armor increased
      • Old: 3 / 7 / 10 / 12 / 13 %
      • New: 5 / 15 / 25 / 35 / 45 %
    • 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
    • The damage effect has been corrected (renewal only) and it is now applied in a bundle of 5 hits instead of a single damage
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)]%
    • Damage debuff changed
      • Old: 20% more damage for 5 seconds or 7 hits
      • New: 30% more damage (15% on boss monsters) for 10 seconds
  • 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
    • 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.
  • Rebalance of RG_PLAGIARISM (Intimidate)
    • Also increases Attack Speed by 1% per Skill Level