Closed Grz3s closed 9 years ago
I need to check why these errors show up.
I only know about the missing spell, but there isn't much we can do here, unless we implement that spell as a server side spell and apply some script to it.
will give u *.sql on irc anyway error with guid poss... -- comes not only with this update... its almost every creature with waypoints there... Im almost 100% sure its related to fact that i made few creatures extra active in that area :|... but lets see what u'll find ;) EDIT: removing extra active - did not help at all :/
ok got reason for second error:
•ERROR:MoveSplineInitArgs::Validate: expression 'velocity > 0.f' failed for Creature (Entry: 29102 Guid: 130665)
it comes after Rampaging Abomination c.29115 casts spell 50335 on target...(pulls the target to the caster) spell ofc is broken in cmangos ... so this is error we reciving ... not sure but @kvipka had this spell working fine with his core...
I think this has something to do with the mmaps. Let's include @cyberium in this discussion (if he's still around)
sad but it looks like that you're last one ....
time to motivate https://github.com/Lillecarl to do stuff :D
ok... so it looks like that non of these issues ... are DB problems. and easiest way to avoid it will be not to add them. About (...)in grid[35,21]cell[7,0] instead grid[36,21]cell0,0 i said before... this error comes not only with this update... maybe its something to do with mmaps = not DB also.
Let's discuss on IRC. I'll be in holiday until next Monday, but if I manage to login to IRC we can talk about it and see what can be done.
@xfurry can u pls look at this...
@kvipka patch looks good. Will push this today, when I get back to my computer
@xfurry When you push this, please do us a favor and remove that new line of code in comments, because there is absolutely no point adding new code in comments. And while you're there, fix the "SMS language" too:
// Try to normalize Z coord cuz GetContactPoint do nothing with Z axis
=>
// Try to normalize Z coord because GetContactPoint does nothing with Z axis
Impish evil :)
@kvipka I think there are some issues with this patch. Sometimes it works, sometimes it doesn't. Also I think we need a similar approach for SPELL_EFFECT_LEAP and SPELL_EFFECT_LEAP_BACK
This is my simplified version of the code:
@@ -3876,10 +3876,31 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
}
m_caster->CastCustomSpell(m_caster, 45470, &bp, NULL, NULL, true);
return;
}
+ // Death Grip
+ else if (m_spellInfo->Id == 49576)
+ {
+ if (!unitTarget)
+ return;
+
+ m_caster->CastSpell(unitTarget, 49560, true);
+ return;
+ }
+ // Death Grip
+ else if (m_spellInfo->Id == 49560)
+ {
+ if (!unitTarget || unitTarget == m_caster)
+ return;
+
+ uint32 spellId = m_spellInfo->CalculateSimpleValue(EFFECT_INDEX_0);
+ float dest_x, dest_y;
+ m_caster->GetNearPoint2D(dest_x, dest_y, m_caster->GetObjectBoundingRadius() + unitTarget->GetObjectBoundingRadius(), m_caster->GetOrientation());
+ unitTarget->CastSpell(dest_x, dest_y, m_caster->GetPositionZ() + 0.5f, spellId, true, NULL, NULL, m_caster->GetObjectGuid(), m_spellInfo);
+ return;
+ }
// Obliterate
else if (m_spellInfo->SpellFamilyFlags & UI64LIT(0x0002000000000000))
{
// search for Annihilation
Unit::AuraList const& dummyList = m_caster->GetAurasByType(SPELL_AURA_DUMMY);
@@ -4244,11 +4265,15 @@ void Spell::EffectJump(SpellEffectIndex eff_idx)
{
sLog.outError("Spell::EffectJump - unsupported target mode for spell ID %u", m_spellInfo->Id);
return;
}
- m_caster->NearTeleportTo(x, y, z, o, true); // TODO Implement this as jump movement?
+ // Try to normalize Z coord because GetContactPoint do nothing with Z axis
+ m_caster->UpdateAllowedPositionZ(x, y, z);
+
+ float speed = m_spellInfo->speed ? m_spellInfo->speed : 27.0f;
+ m_caster->GetMotionMaster()->MoveJump(x, y, z, speed, 2.5f);
}
void Spell::EffectTeleportUnits(SpellEffectIndex eff_idx) // TODO - Use target settings for this effect!
{
if (!unitTarget || unitTarget->IsTaxiFlying())
@@ -10864,15 +10889,22 @@ void Spell::EffectSendTaxi(SpellEffectIndex eff_idx)
void Spell::EffectPlayerPull(SpellEffectIndex eff_idx)
{
if (!unitTarget)
return;
- float dist = unitTarget->GetDistance2d(m_caster);
- if (damage && dist > damage)
- dist = float(damage);
+ float x, y, z;
+ m_caster->GetPosition(x, y, z);
+
+ // move back a bit
+ x = x - (0.6 * cos(m_caster->GetOrientation() + M_PI_F));
+ y = y - (0.6 * sin(m_caster->GetOrientation() + M_PI_F));
+
+ // Try to normalize Z coord because GetContactPoint do nothing with Z axis
+ unitTarget->UpdateAllowedPositionZ(x, y, z);
- unitTarget->KnockBackFrom(m_caster, -dist, float(m_spellInfo->EffectMiscValue[eff_idx]) / 10);
+ float speed = m_spellInfo->speed ? m_spellInfo->speed : 27.0f;
+ unitTarget->GetMotionMaster()->MoveJump(x, y, z, speed, 2.5f);
}
void Spell::EffectDispelMechanic(SpellEffectIndex eff_idx)
{
if (!unitTarget)
hmm... yeah, movejump, yes - it's right way. But about SPELL_EFFECT_LEAP and etc - no. This effects are not movement ( only teleport - NearTeleportTo)
p.s. "Sometimes it works, sometimes it doesn't." How? specifically please
p.s. "Sometimes it works, sometimes it doesn't." How? specifically please
I need to investigate. Let me debug this first and understand why the target doesn't always jump.
You were right, the Leap effect is only teleport I'm not sure about the Leap backwards effect, but for the moment let's assume that it works fine.
@kvipka the problem is with the mounted creatures. They will not jump while mounted, so I think there should be a way to dismount target while being pulled by DK.
Ive got some good vids from blizz.... with ppl using this spell: https://www.youtube.com/watch?v=muUr0kNXCAE -- 6:48 -- death grid used on vehicle. (blizz path 3.0.9) an here: https://www.youtube.com/watch?v=sIV4Qj3mz3o -- 5:16 -- death grid on normal mounted creature Edited: correct time ;)
Please give me the timing for the first video again. 3:09 isn't the right moment.
vehicle has immune, but mounted creatures can be touched by this effect? Right?
vehicle has immune, but mounted creatures can be touched by this effect? Right?
Mounted creatures can be hit by this effect. The problem is that in our core this doesn't happen. Mounted creatures aren't doing the jump movement to the caster, they are just getting aggro.
@xfurry not sure if i did smth wrong.... but i did fresh compile with this path.. and both spells doesnt work at all (only makes creatures aggro)..
•ERROR:Creature (GUIDLow: 130662) X: 2134.282959 Y: -5854.985840 (original) in grid[35,21]cell[7,0] instead grid[36,21]cell[0,0] not only for 130662 -- almost every creature with wps... from time to time spam this error in random xyz on this map -- i have no idea what can i do to deal with it :/
I think i have found where this comming from...
Map.cpp
bool Map::CheckGridIntegrity(Creature* c, bool moved) const
{
Cell const& cur_cell = c->GetCurrentCell();
CellPair xy_val = MaNGOS::ComputeCellPair(c->GetPositionX(), c->GetPositionY());
Cell xy_cell(xy_val);
if (xy_cell != cur_cell)
{
sLog.outError("Creature (GUIDLow: %u) X: %f Y: %f (%s) in grid[%u,%u]cell[%u,%u] instead grid[%u,%u]cell[%u,%u]",
c->GetGUIDLow(),
c->GetPositionX(), c->GetPositionY(), (moved ? "final" : "original"),
cur_cell.GridX(), cur_cell.GridY(), cur_cell.CellX(), cur_cell.CellY(),
xy_cell.GridX(), xy_cell.GridY(), xy_cell.CellX(), xy_cell.CellY());
return true; // not crash at error, just output error in debug mode
}
return true;
}
So ,,, if this should be only in debug mode, so WTH... this shows in normal "1" basic/error mode??? @xfurry still interested with this project?:)
That code will log, regardless of mode and in both release and debug builds. The comment is wrong. But the author probably meant to say something like If we return false here, we'll crash, so let's just output it as an error and return true anyway
.
And I can confirm it's not something related to a particular creature - I have similar errors for years in my TBC server logs. We'll have to figure out one day why that cell is not what's expected.
so why not to move this -- stupid error to "debug only" -- and have a clear console... and as u said ... one day someone may figure this out and fix it.
It's not hard to have a clear console. But hiding issues has never been a good strategy...
you're right.
ok so last one ... is still a problem here... but has nothing to do with DB... so lets Close it and may someone from core will look at it one day.
Hi @xfurry: got a question related to update that is not added yet...(final update for DK phase 64) It's all prepared ...and ready to add, but produces tons of errors... I have no idea how to fix'em:
Now I have no idea what to do.... i dont want to add stuff ... that will make console 'explodes' with tons of core errors:/ specialy stuff that i cant fix by DB., so i stuck with it. ... Need your help here...
Look how it looks like: http://paste2.org/fXMI55A4