Jump to content

breakwater

Members
  • Posts

    166
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by breakwater

  1. Take a look into this commits from me https://github.com/Reamer/mangos/commit/c62055f2b7ade14c769b2487dacd2808e32fdd5b https://github.com/Reamer/mangos/commit/396077168c625e37d08c349c2cb5144a4cc31589 https://github.com/Reamer/mangos/commit/fc4f00ad941e43d7ea5c8ea574cc0027c6a9d2a0 The order should be right. I have fix this 3 spells 3 times now it works Good luck and I hope this is a help for you
  2. I will test thisone. THATS NOT RIGHT https://github.com/Reamer/mangos/commit/ce120e15a98c0416b2aa4f3461c9c7ae42cb0598
  3. Hi, I hope someone can me with this question. What is the Meaning of bounding_radius Some facts: ~97% of boundingsradius are lower or equals then 2 bounding radius is use from mangos, but I think nobody knows the ->real<- Meaning the bounding_radius are direct from offical There are some mobs with big movement problems because of bounding_radius (Examples: A lot of Golems-Mobs, Maexxna, Supremus, Guardian of Icecrown) Maybe someone can help mangos with a good answer. Thank you
  4. hi, I have a bug: If a creature knockback you in air, the creature goes into enterevademode, because the creature can't reach you. I hope for fast help. And i hope that the merge with mangosmaster is "IN_PROGRESS"
  5. And how I can say that training dummy give no weapon skill? Who are you stfx, I have never read your name? From ru-mangos forum? Sry for double post
  6. I don't know But i think, thats not the sense from this training dummy. Players can get weapon skills, but not if they are afk You can delete this. It's my custom stuff
  7. The meaning of the afk-Time: Thats for player which want train weapon skills with dummys. Thats players are AFK(maybe on Desktop) Understand?
  8. I have a good training dummy. at this dummy players can also use finisher. and no rotation^^ /*###### ## npc_training_dummy ######*/ #define OUT_OF_COMBAT_TIME 5000 #define AFK_TIME 300000 struct MANGOS_DLL_DECL npc_training_dummyAI : public Scripted_NoMovementAI { npc_training_dummyAI(Creature* pCreature) : Scripted_NoMovementAI(pCreature) { Reset(); } uint32 afk_timer; uint32 combat_timer; void Reset() { //m_creature->addUnitState(UNIT_STAT_STUNNED); combat_timer = 0; afk_timer = 0; } void DamageTaken(Unit* pDoneBy, uint32 &uiDamage) { combat_timer = 0; } void UpdateAI(const uint32 diff) { if (!m_creature->SelectHostileTarget() || !m_creature->getVictim()) return; if (m_creature->GetHealthPercent() < 10.0f) // allow players using finishers m_creature->ModifyHealth(m_creature->GetMaxHealth()); m_creature->SetTargetGuid(ObjectGuid()); // prevent from rotating combat_timer += diff; afk_timer += diff; if (combat_timer > OUT_OF_COMBAT_TIME || afk_timer > AFK_TIME) EnterEvadeMode(); } }; CreatureAI* GetAI_npc_training_dummy(Creature* pCreature) { return new npc_training_dummyAI(pCreature); }
  9. Negativ Feedback: Big Problem with fear: players are falling under map or go through walls (you can test it in tunnel in warsong) Sometimes no movement if player is in fear. Sometimes no movement of npc(often robots in near of xt002 ulduar) BUT: I have more positiv effects, therefor I use mmap. I have no lags, but not much players too
  10. ohhh sry i have an old repo, thx for fix this hould also help. Shit old repo on my site. topic can close and maybe delete
  11. if an holder is create, some holder start with max stacks i mean this part in in SpellAuraHolder::SpellAuraHolder(SpellEntry const* spellproto, Unit *target, WorldObject *caster, Item *castItem) : m_spellProto(spellproto), m_target(target), m_castItemGuid(castItem ? castItem->GetObjectGuid() : ObjectGuid()), m_auraSlot(MAX_AURAS), m_auraFlags(AFLAG_NONE), m_auraLevel(1), m_procCharges(0), m_stackAmount(1), m_removeMode(AURA_REMOVE_BY_DEFAULT), m_AuraDRGroup(DIMINISHING_NONE), m_timeCla(1000), m_permanent(false), m_isRemovedOnShapeLost(true), m_deleted(false), m_in_use(0) { [...] // some custom stack values at aura holder create switch (m_spellProto->Id) { // some auras applied with max stack case 24575: // Brittle Armor case 24659: // Unstable Power case 24662: // Restless Strength case 26464: // Mercurial Shield case 34027: // Kill Command case 55166: // Tidal Force case 58914: // Kill Command (pet part) case 62519: // Attuned to Nature case 63050: // Sanity (Ulduar - Yogg Saron) case 64455: // Feral Essence case 71564: // Deadly Precision case 74396: // Fingers of Frost m_stackAmount = m_spellProto->StackAmount; break; } now in aura constructor the stacks are not be in look. with SetModifier we must take damage * stack this: @@ -417,10 +417,12 @@ m_isPersistent(false), m_in_use(0), m_spellAuraHolder(holder) } } } } + damage = damage * GetStackAmount(); + DEBUG_FILTER_LOG(LOG_FILTER_SPELL_CAST, "Aura: construct Spellid : %u, Aura : %u Target : %d Damage : %d", spellproto->Id, spellproto->EffectApplyAuraName[eff], spellproto->EffectImplicitTargetA[eff], damage); SetModifier(AuraType(spellproto->EffectApplyAuraName[eff]), damage, spellproto->EffectAmplitude[eff], spellproto->EffectMiscValue[eff]); Player* modOwner = caster ? caster->GetSpellModOwner() : NULL; i hope you unterstand. I have registered this logical mistake with the spell 62519. The Modifier is without this fix calculate right in the method SetStackAmount()
  12. What bug does the patch fix? What features does the patch add? Set Health to max for some Spell's with increase HealthPercent For which repository revision was the patch created? my revision is 11708, but this fix is also for newer and older revisions Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. I don't know Who has been writing this patch? Please include either forum user names or email addresses. me Maybe we find other spells. Examples: 56257, 59911, 60430 But i don't use this spells diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 5e01875..7e5905c 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -6582,7 +6582,21 @@ void Aura::HandleAuraModIncreaseEnergyPercent(bool apply, bool /*Real*/) void Aura::HandleAuraModIncreaseHealthPercent(bool apply, bool /*Real*/) { - GetTarget()->HandleStatModifier(UNIT_MOD_HEALTH, TOTAL_PCT, float(m_modifier.m_amount), apply); + Unit *target = GetTarget(); + + if (!target) + return; + + target->HandleStatModifier(UNIT_MOD_HEALTH, TOTAL_PCT, float(m_modifier.m_amount), apply); + switch (GetId()) + { + case 64193: // Heartbreak (Ulduar - XT-002) + case 65737: + target->SetHealth(target->GetMaxHealth()); + break; + default: + break; + } } void Aura::HandleAuraIncreaseBaseHealthPercent(bool apply, bool /*Real*/) EDIT: I have add this Spell 64582
  13. I think, we have no other choice with the dmg spell. Only the damage buff has a periodic for damage and buff-stack-calculation.
  14. I have an other implementation for Polarity Shift (only for Thaddius) take this link to paste: http://paste2.org/p/1530708 or this link to my git repo: https://github.com/Reamer/mangos/commit/51ec60eb0732761838fbacb8bd6a5430b72e9827 An explanation: with this part, we remove the Damage-Buff-Aura, only the Aura NOT the Holder diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 745812c..3b278d2 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2055,6 +2055,18 @@ void Aura::TriggerSpell() triggerTarget->CastCustomSpell(triggerTarget, trigger_spell_id, &m_modifier.m_amount, NULL, NULL, true, NULL, this); return; } + case 28084: // Negative Charge + { + if (triggerTarget->HasAura(29660)) + triggerTarget->RemoveAura(29660, EFFECT_INDEX_0); + break; + } + case 28059: // Positive Charge + { + if (triggerTarget->HasAura(29659)) + triggerTarget->RemoveAura(29659, EFFECT_INDEX_0); + break; + } case 33525: // Ground Slam triggerTarget->CastSpell(triggerTarget, trigger_spell_id, true, NULL, this, casterGUID); return; now the trigger Spell witch is called after the prev code. This Damage Effekt apply the Damage-Buff-Aura on targets, with equal Polarity and reduce damage to 0. targets witch has not to equal Polarity get damage. diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index aba86b5..79d85c2 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -377,6 +377,33 @@ void Spell::EffectSchoolDMG(SpellEffectIndex effect_idx) damage = damage * unitTarget->GetMaxHealth() / 100; break; } + // Thaddius' charges, don't deal dmg to units with the same charge but give them the buff: + // Positive Charge + case 28062: + { + // If target is not (+) charged, then just deal dmg + if (!unitTarget->HasAura(28059)) + break; + + if (m_caster != unitTarget) + m_caster->CastSpell(m_caster, 29659, true); + + damage = 0; + break; + } + // Negative Charge + case 28085: + { + // If target is not (-) charged, then just deal dmg + if (!unitTarget->HasAura(28084)) + break; + + if (m_caster != unitTarget) + m_caster->CastSpell(m_caster, 29660, true); + + damage = 0; + break; + } // Cataclysmic Bolt case 38441: { The Main Spell neutralize the targets and makes a 50:50 change for both Polaritys. I think we doesn't need an true split (10 -> 5:5 in the middle it is 5:5). Very important Thaddius (or the caster ) must be originalcaster, because if the trigger spell "trigger" the damage spell without thaddius as original caster, the player damage an other player. The effect this player are now in PvP. @@ -1408,6 +1435,20 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx) return; } + case 28089: // Polarity Shift (Thaddius - Naxxramas) + { + if (!unitTarget) + return; + + // neutralize the target + if (unitTarget->HasAura(28059)) unitTarget->RemoveAurasDueToSpell(28059); + if (unitTarget->HasAura(29659)) unitTarget->RemoveAurasDueToSpell(29659); + if (unitTarget->HasAura(28084)) unitTarget->RemoveAurasDueToSpell(28084); + if (unitTarget->HasAura(29660)) unitTarget->RemoveAurasDueToSpell(29660); + + unitTarget->CastSpell(unitTarget, roll_chance_i(50) ? 28059 : 28084, true, 0, 0, m_caster->GetObjectGuid()); + break; + } case 29200: // Purify Helboar Meat { if (m_caster->GetTypeId() != TYPEID_PLAYER) at last cleanup, if the polarity ends, this must remove the damage-buff-aura too. @@ -2716,6 +2728,18 @@ void Aura::HandleAuraDummy(bool apply, bool Real) return; } + case 28059: // Positive Charge (Thaddius) + { + if (target->HasAura(29659)) + target->RemoveAurasDueToSpell(29659); + return; + } + case 28084: // Negative Charge (Thaddius) + { + if (target->HasAura(29660)) + target->RemoveAurasDueToSpell(29660); + return; + } case 28169: // Mutating Injection { // Mutagen Explosion I hope you understand me way of logical. And don't know, who is the right author. The Patch is build on the base of michalpolko. Sorry for me english. EDIT: How i can write the code part right? Thats looks ugly
  15. Why for the boss Thaddius and Archimonde? Maybe someone can explain.
  16. Maybe you add your gold function in Player::RewardHonor(Unit *uVictim, uint32 groupsize, float honor) Look where and when this function is called. I think the different between gold and honor is not big Hope this help
  17. The script Target is for the spell, that the caster looks in direction to dummy npc(the caster align to dummy npc). If the dummy npc move. The caster will follow, to shoot in the direction where the dummy npc is. The spells are from vx001, the second boss in mimiron encouter(the cannon) spellname: P3Wx2 Laser Barrage sry for no links into my first post.
  18. Hi, I have a question about code. With this spell 63274 the npc turn to scriptTarget (dummy npc) Now the damage trigger spell 63293 with target TARGET_IN_FRONT_OF_CASTER_30 makes shoots into the direction of dummy npc. The other visual dummy effects 63300, 63297 and 64042 makes shoots against the aggro target. I check(with ".gps") the orientation of npc during the channel of this spell and i saw, that the orientation is not up-to-date. But if the orientation is not up-to-date, why the damage trigger spell shoot into the right direction auf dummy npc??? I hope someone has an solution for this problem
  19. Thats no error, that's a warning. With an error mangos doesn't compile right. A warning is a note for the coder that there is maybe a type mistake. If you make a int32 value to uint32 value without a casting of types you get a warning.
  20. Now i have this part and i have the discript visual mistake if (target->GetDistance2d(itr->getSource()) > 20) target->CastSpell(itr->getSource(), 63803, true, 0, 0, caster->GetObjectGuid()); // damage spell else target->CastSpell(itr->getSource(), 63804, true, 0, 0, caster->GetObjectGuid()); // optic spell target - Player with dummyperiodic aura 63802 caster - Caster which cast the spell 63802 on 2 players and make give aura. Maxtarget from this spell is Two. (itr->getSource) - Player in Map with has also the aura 63802 My Problem is now, that the spell beam take the way player to mob to other Player Only a visual mistake. Spell calculation is now RIGHT, the damage make the mob, Players can support themself with heals etc. I take the GM-command ".cast target 63802" with mob in target.
  21. Hi all, I have write a Spellhandling for Brain Link. But I have general problems with Mangos. Thats NO complete patch. Only a discussion about coding. At first my code @@ -1852,6 +1854,7 @@ void Spell::SetTargetMap(SpellEffectIndex effIndex, uint32 targetMode, UnitList& break; case 28542: // Life Drain case 62476: // Icicle (Hodir 10man) + case 63802: // Brain Link (Ulduar - Yogg Saron) case 66013: // Penetrating Cold (10 man) case 68509: // Penetrating Cold (10 man heroic) case 69278: // Gas spore - 10 diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 7114f3a..94a0021 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -8520,6 +8520,40 @@ void Aura::PeriodicDummyTick() caster->CastCustomSpell(target, 63278, 0, &(spell->EffectBasePoints[0]), 0, false, 0, 0, caster->GetObjectGuid() , spell); return; } + case 63802: // Brain Link (Ulduar - Yogg Saron) + { + Unit* caster = GetCaster(); + + if (!caster || !target) + return; + // only at Player because of perfermonce + if (target->GetTypeId() != TYPEID_PLAYER) + return; + + // only in instance because of perfermonce + if (!(caster->GetMap()->IsDungeon()) || !(target->GetMap()->IsDungeon())) + return; + + Map::PlayerList const &PlayerList = target->GetMap()->GetPlayers(); + if (PlayerList.isEmpty()) + return; + // search for partner + for (Map::PlayerList::const_iterator itr = PlayerList.begin(); itr != PlayerList.end(); ++itr) + { + if (!itr->getSource()->HasAura(63802)) + continue; + // no self partnership + if (itr->getSource()->GetObjectGuid() == target->GetObjectGuid()) + continue; + + if (target->GetDistance2d(itr->getSource()) > 20) + target->CastSpell(itr->getSource(), 63803, true); // damage spell + else + target->CastSpell(itr->getSource(), 63804, true); // optic spell + return; + } + break; + } case 64161: // Empowered (Ulduar - Yogg Saron) { uint8 stacks = 0; Now my problems: The spell visual works good, but the spell dmg calculation is with real caster (a Player with buffs etc.; calculate spelldamage ...). If I use the original caster ( a mob) the visual effect "fly" from this mob to caster(visual mistake). An other Problem is: If a Player attack a Player with a spell with Effect SPELL_EFFECT_SCHOOL_DAMAGE, the player is in combat with this player, so the player can not support the other one. That are realy confuse, bad, if the players fight against a boss. I hope someone can help me.
  22. Ok I have take the risk and download the file. I post this in paste2.org http://paste2.org/p/1444804 http://paste2.org/p/1444806 http://paste2.org/p/1444809 @Skyangel: Plz post long text with paste2.org. And plz read your text befor you post in mangos forum. You have a lot of german words in your text. Google Translate
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use