Viscidus AQ40

Yo! #2

Today I started working on viscidus. You can see the code here: https://github.com/krofna/TrinityCore/tree/viscidus

I could use some help, especially with research:

  • I am not 100% sure about num melee hits it takes to shatter him after he is frozen. I got reliable data for 1.12 (75 according to wowwiki), and 4.3.4(150) according to youtube video. Unsure which is valid on 3.3.5

  • Spells: 25896, 25938, 26003 ← Not tested, but something tells me it aint gonna “just work”

  • When does Viscidus “grow”? : 25897 (obsolete, replaced by changing object scale, see: shrinking)

Rest is easy, gonna be done in following days…

On retail they changed aq20/40 on on cata.

Updated, it kinda works now.

Current major issues:

  • Globs are spawned below ground level (see: boss_viscidus.cpp:127-138)

  • Dead globs aren’t removed from SummonList (see: boss_viscidus.cpp:199-204)

  • Explode/rejoin animations are never showed because of SetVisible(false) hack (see: boss_viscidus.cpp:120, 274)

  • Viscidus size does not reduce (could use some research) (see: boss_viscidus.cpp:196-197)

NOTE: For debugging purposes num of frost/melee hits it takes to switch phase is reduced (see: boss_viscidus.cpp:63-70)

Halp.

  • Viscidus size does not reduce (could use some research) (see: boss_viscidus.cpp:196-197)

The spells you mentioned about scaling maybe need to be implemented in core? You can insert them in spell_dbc until better solution is found, if they aren’t used by any other spells. I doubt the spells are replaced by smth different.

I don’t know, if it would be in any help, but this is an example of a spell that interferes in scale changing. You mentioned you know the speels called by that event, would be great if you can post them.

ID - 47114 Scorchling Grow

=================================================

Category = 0, SpellIconID = 1, activeIconID = 0, SpellVisual = (10521,0)

Family SPELLFAMILY_GENERIC, flag 0x00000000 00000000 00000000

SpellSchoolMask = 1 (SPELL_SCHOOL_MASK_NORMAL)

DamageClass = 0 (SPELL_DAMAGE_CLASS_NONE)

PreventionType = 0 (SPELL_PREVENTION_TYPE_NONE)

=================================================

Attributes: 0x00000100 (SPELL_ATTR0_HIDE_IN_COMBAT_LOG)

AttributesEx1: 0x10000400 (SPELL_ATTR1_NO_THREAT, SPELL_ATTR1_DONT_DISPLAY_IN_AURA_BAR)

AttributesEx2: 0x00000004 (SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS)

=================================================

Spell Level = 0, base 0, max 0, maxTarget 0

Category = 0

DispelType = 0 (DISPEL_NONE)

Mechanic = 0 (MECHANIC_NONE)

SpellRange: (Id 13) “Anywhere”:

MinRange = 0, MinRangeFriendly = 0

MaxRange = 50000, MaxRangeFriendly = 50000

Stackable up to 500

CastingTime (Id 1) = 0,00

Duration: ID (225) 604800000, 0, 604800000

Interrupt Flags: 0x00000000, AuraIF 0x00000000, ChannelIF 0x00000000

Chance = 101, charges - 0

=================================================

Effect 0: Id 6 (SPELL_EFFECT_APPLY_AURA)

BasePoints = 150

Targets (1, 0) (TARGET_UNIT_CASTER, NO_TARGET)

Aura Id 61 (SPELL_AURA_MOD_SCALE), value = 150, misc = 0 (0), miscB = 0, periodic = 0

Effect 1: NO EFFECT

Effect 2: NO EFFECT

Spells are:

SPELL_VISCIDUS_SHRINKS = 25893, // removed from DBC
SPELL_VISCIDUS_SHRINKS_2 = 27934, // removed from DBC
SPELL_VISCIDUS_GROWS = 25897, // removed from DBC

I don’t really know how to extract these from DBC to .sql

Tbh, I don’t know if there is any tool for that, I always did it the long way:

open spell_dbc table and open dbc information about columns names, then checking what is included and taking it from the dbc, but is 3.3.5a one referrence:

http://www.trinitycore.info/Spell.dbc_tc2