- Dec 10, 2014
-
-
Sdw- authored
Fixing minor bug in EnergyAttack related to physical skill power stat that may cause incredible damage
-
- Nov 09, 2014
-
-
Zoey76 authored
-
- Oct 31, 2014
-
-
UnAfraid authored
-
- May 23, 2014
-
-
Adry_85 authored
Reviewed by: Nos
-
- Mar 24, 2014
-
-
Adry_85 authored
* Fixing `CrystalType` and `MaterialType` inside xml to upper case * Patch by Nos Reviewed by: Nos, !UnAfraid, Zoey76
-
- Mar 01, 2014
- Feb 14, 2014
-
-
Nos authored
-
- Jan 27, 2014
-
-
Nos authored
Reported by: facheme Reviewed by: St3et
-
- Jan 24, 2014
-
-
Nos authored
Reviewed by: Zoey76, !UnAfraid
-
- Dec 29, 2013
-
-
Nos authored
Reported by: !FinalDestination, janiko, Tavo22
-
- Nov 03, 2013
-
-
Zoey76 authored
* Adding method overload (just wrappers) to `L2Skill`.applyEffects(..) to avoid useless parameters. * Suggested by: jurchiks * Added a new parameter to `L2Skill`.applyEffects(..) to customize skill abnormal time upon casting. * Changed the way we check if we can apply a buff (debuff, etc) to a character. * Now all checks must be done on `AbstractEffect`#canStart(`BuffInfo`), this way we prevent executing `AbstractEffect`#onStart(`BuffInfo`) logic if the effect won't be added to the effect list. * `AbstractEffect`#onStart(`BuffInfo`) is void now. * Now `AbstractEffect`#onStart(`BuffInfo`) is called when the effect is already placed in the effect list, the old effect has been removed and we are sure the new effect should be activated. * Reported by: nBd * Suggested by: nBd * Reworked the way effects are restored into characters (players, summons). * Avoiding the restoration of instant effects. * Reported by: nBd, UnAfraid, Nos * Reusing `L2Skill`.applyEffects(..) code! * Fixed effects flags not being computed for players (sleep, hide, etc not removed). * Reported by: nBd, thorl2 * Suggested by: nBd * Fixed many system messages: * "$c1 has resisted your $s2" is not displayed when adding active skills or switching subclasses. * Reported by: nBd, UnAfraid, Adry_85 * "$s1 has worn off" is not displayed for passive skills when they are removed. * Fixing summons not getting buffed when master receives buffs. * Reported by: nBd * Fixed summons not getting Celestial Shield. * Reported by: Zeldak '''Note to developers:''' Instant effects should not override `AbstractEffect`#canStart(`BuffInfo`), all checks should be done `AbstractEffect`#onStart(`BuffInfo`).
-
- Oct 27, 2013
-
-
Zoey76 authored
* Renamed `L2Effect` to `AbstractEffect`. * No more dynamic creation of effects (Huge performance and memory boost!). * Removed all traces or reflection on run time! * Removed `EffectTemplate`, merged with `AbstractEffect`. * Reworked and externalized all the logic from `AbstractEffect` that handled effect ticking. * Reviewed all "over time" skills: * `Flag` effect does not have ticks and doesn't need onActionTime() defined. * '''Fixed DOT (damage over time), MDOT (mana damage over time), HOT (heal over time), MHOT (mana heal over time) skills.''' * Reported by: Tavo22, Snip * `FakeDeath` effect should only last forever (or while conditions are met) if it's a toggle skill. * `Relax` effect should only last forever (or while conditions are met) if it's a toggle skill. * Removed `EffectState` enumerated and the nasty switch associated to it! * Removed "lambda" support from effects, the default attribute `val` is now double. * Removed val="0", now `val`'s default value is zero, no need to declare it explicitely. * '''Removed''' `noicon` '''attribute from effects, icon is not related to effects, but to the skill.'' * Renamed `AbnormalEffect` enumerated to `AbnormalVisualEffect`. * Removed `EffectDurationHolder` DTO. * Removed getFirstEffect(int), skills can be stoped by skill ID or `AbnormalType`. * Reworked (again) `CharEffectList`: * Using maps as underlying implementation, '''reduced drastically iterations''' (Hash tables offer 0(1) in most operations). * Using Javolution's `FastMap`, due Java lacks a default implementation that is ordered by insert order, thread-safe and concurrent safe. * Separated all kind of skills into buffs, triggers, dances, debuffs, passive. * Using Double-locked checking, useless instantiation of maps is avoided. * Improved buff counting operations (no more iterations over every effect every time you get a new one to know if you reached maximum count). * Removed getEffects() and all temporary list/map creations. * '''Reworked the way buffs are inserted preventing iterations and correcting exceptions while finding the correct index to insert the buff.''' * Reworked `Formulas`#calcEffectAbnormalTime(Env env) * Fixed `L2CubicInstance`#useCubic<Skill Type>(..), this methods are not static, then they don't need to recieve a `L2CubicInstance` as parameter. * Implemented `BuffInfo`, modeled from retail's implementation with minor changes to fit our implementation. * Complex DTO that holds all the information for a given buff (or debuff or dance/song) set of effects issued by an skill. * Controls the logic of the buffs. * Removed a few of `L2EffectType`. * Improved a bit `L2BabyPetInstance` skill casting related logic, reduced iterations and simplified the code. * Implemented `EffectTaskInfo`, DTO to hold the effect task (Maybe this will change later). * Implemented `EffectTickTask` runnable task to control ticking logic. * Removed "after effect" implementation, totally useless. * Suggested by: UnAfraid * Removed all the `L2Skill`#getEffects(..) methods replaced with L2Skill#applyEffects(..). * Moved "can be stolen" logic to `L2Skill`, it isn't related to the effect, but to the skill. * Added "Refresh" button on admin panel to check buffs easily. * Added admin command "admin_getbuff_ps" to check effects from passive skills. * Improved performance in `DispelBySlot` and `DispelBySlotProbability` effects. * Fixed minor typo in `DispelBySlot` and `DispelBySlotProbability` effects, there are values over `Byte.MAX_VALUE`. * '''Added retail support for Herbs, when a lesser buff is replaced by an herb, it becomes inactive, but it's timer continues, when the Herb buff finishes if the lesser buff has time it becomes active untill completes it's time.''' * Time does not pause, it just continues in the background. * Effects does not stack. * Reported by: Nos * '''Fixed Herbs, they shouldn't display gauge bar (casting bar) upon usage.''' * Reported by: Nos * '''Fixed Herbs not removing lesser effect icon, leading to players belive that buffs stack...''' * Reported by: Tavo22, evets, u3games, pandragon * '''Fixing instant effects being added to the effect list, and removing buffs present on the list.''' * Reported by: Tavo22 * '''Fixed "Short Buff" slot (slot for healing potions).''' * Statified reset packet (reduced object creation, a lot!). * Removed task to reset `ShortBuffStatusUpdate`, let's use buff ending task for that. * Moved logic to `CharEffectList` instead of `L2PcInstance` + `ItemSkillsTemplate`. * Reported by: JMD, Gries, Cresceus * Fixed `StealAbnormal` effect logic and `Formulas`#calcCancelStealEffects(..). * Improved buffs doesn't stack anymore with normal (lesser) buffs. * Now all effects are excecuted including instant effects (if they are successfuly applied). * Reported by: Adry_85 * `BlockChat` effect shouldn't be instant! * Fixed system messages related to skills (success, fail, removal, ending). * Improved `AdminBuffs`, more information is displayed: * Blocked abnormal skill types (if any) * Total buff count. * Hidden buff count. * Inactive effects (in red) * Skill level next to the name. * '''Rewritten''' `EffectMasterHandler` '''to avoid reflection where it's useless.''' * Since `L2EffectType` is scheduled to be removed: * `AbstractEffect`#getEffectType() is not abstract anymore, now returns L2EffectType.NONE by default. * '''Fixing debuffs working on "white players" with control.''' * Patch by: nBd (minor changes by Zoey76) * Reported by: plasan, jungla56, St3eT, Tavo22, Konstantinos, pandragon * '''Fixed exploit on restore summon feature that allows players to dupe summons.''' * Unhardcoding `canSummon` condition. * Reported by: Janiko * '''Fixed Arcane Shield getting stuck after being stolen.''' * Reported by: valanths1990, nBd, freestyler, Gries * '''Fixed triggered skills that got stacked within the same ID and different level.''' * Reported by: nBd, lucan, blacksea, Gries Tested by: Nos, Captain, Janiko, Konstantinos, Lucan, UnAfraid, Zoey76 '''Note to developers 1:''' Instant effects shouldn't override onExit(!BuffInfo). '''Note to developers 2:''' Is not required to call super.onStart() or super.onExit() to add/remove abnormal visual effects anymore, it's done on an indepent method. '''Note to developers 3:''' Do not add "steal constructor", such thing is not required anymore.
-
- Aug 24, 2013
-
-
xban1x authored
* Reviewed by: Zoey76
-
- Jul 18, 2013
-
-
Rumen Nikiforov authored
-
- Jun 20, 2013
-
-
Rumen Nikiforov authored
* Reviewed by: Adry_85
-
- Jun 15, 2013
-
-
Adry_85 authored
* Now skills are triggered from any kind of damages received. * Reported by: Gries Patch by: Adry_85, !UnAfraid
-
- May 21, 2013
-
-
Adry_85 authored
Reported by: oscard Tested by: oscard
-
- May 17, 2013
-
-
Zoey76 authored
* Removed useless methods from L2Effect. * Added getTimeLeft() method to properly calculate remaining time, according to effect's abnormal time and tick count. * Changed ticks' default value to 0. * Removed unused ConditionForceBuff. * '''Pre-implemented instant effects.''' * Retail like system messages for skill dispel, toggle abort and effect end! * Cancel related skills must be verified in retail. * Reworked "buff display" packets. * AbnormalStatusUpdate * PartySpelled. * ExOlympiadSpelledInfo * Improved remaining time calculation. * Fixed consume in continuous skills (toggle/ "over time"). * Reported by: LeoDetona, badboy29, MELERIX '''Note 1:''' Signet related skills are not working, they are too custom and has to be re-implemented. '''Note 2:''' Some effects in Datapack may updates after this rework, please don't spam the forums.
-
- May 13, 2013
-
-
Zoey76 authored
* Updated most effect that always success, the rest will be reviewed and updated soon. * Moved success formulas to proper place.
-
- May 09, 2013
-
-
Adry_85 authored
Reported by: !UnAfraid Reviewed by: !UnAfraid
-
- May 08, 2013
-
-
Zoey76 authored
-
Adry_85 authored
* L2PcInstance: * Removed isUsingDualWeapon() not used anymore. * Removed custom check for Strider Siege Assault skill (new condition will be added soon). * Fixed double system message when you use Soul Rage skill. * Stats: * Removed useless stats (LETHAL_RATE, AGGRESSION_VULN, AGGRESSION_PROF, CRIT_PROF, NONE_WPN_VULN, transformId). * !SystemMessageId: * Updated system message when you done damage on target. * Added missing system message for Seven Signs quests (quests will be added soon). * Formulas: * Moved calcLethalHit in proper effect handler. * Cleanup and fixes some methods. * Fixing blow bonus when you hitting from the side of target. * L2Character: * Removed !CpConsume check and fixed skill Over the Body. * L2CubicInstance: * Added !CubicDrain method. * Removed useless comment. * Fixed Magical Critical Rate calculation. * L2Skill: * Removed staticDamage variable, now have own effect like retail. * Removed canBeReflected variable, now have his proper checks. * Cleanup and fixes some methods. * L2SkillType: * Deleted PDAM, MDAM, MANADAM, CPDAMPERCENT, DRAIN, DEATHLINK, FATAL, BLOW, STRSIEGEASSAULT and CHARGEDAM. * L2EffectType: * Added new effects DEATH_LINK, ENERGY_ATTACK, FATAL_BLOW, HP_DRAIN, LETHAL, MAGICAL_ATTACK, MAGICAL_ATTACK_MP, PHYSICAL_ATTACK, PHYSICAL_ATTACK_HP_LINK and STATIC_DAMAGE. * Renamed !IncreaseCharges to !FocusEnergy and made effect retail like. * Added new effect !FocusMaxEnergy. * Effecthandlers * Removed !StatusUpdate from some effect because is already updated by setCurrentHp, setCurrentMp and setCurrentCp methods. '''NOTE''': New skill debugging will be added soon. Reviewed by: MELERIX, Zoey76
-