Jump to content

Auntie Mangos

Moderators
  • Posts

    2446
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by Auntie Mangos

  1. @Wyk3d: as mentioned in >this thread<, if a creature has a chance for loot but this time you are unlucky and it's empty, you get the loot indication on mobs and do not get anything because the server didn't know yet whether it will roll any loot or not. That would be the argument to create the loot on death, so sparkling mob => always something to loot.
  2. If I can add my 2 cents and my experience. We have tried this before with both Mangos and another emulator. Unfortunately you will most likely end up with either items going missing, or at least with the server mail system going haywire. Please see my post here: http://getmangos.eu/community/viewtopic.php?id=5973 Although this method does work, as you have discribed, it unfortunately creates bugs. You can even take it a step further, the "raid realm" does not have to be on the same LAN, it can be made to work remotely as well, from another location. Good luck, and if you managed to get this working without mail erros or items going missing, please do let us know what you did.
  3. 7076, clean mangos, only some minor changes on commands. + mtmaps from derex 1st crash now, others are sadly freez, should i post dumps too?? had like 3 freez now (( (i will post one freez) if anyone know, how tzo find that freez, it would be welcome http://pastebin.com/m7a0b5df5 and for waza123, it depends how many online u have...) EDIT: next http://pastebin.com/m369ee4b1 got like 20crashes now sometimes its in row
  4. Hi, Well I call it 'movement maps', often abreviated to 'mmaps' a project started by faramir118 that essentially controls 'unit' movement between points A to B. In the past, hostile creatures and bots would travel as the crow flies (shortest route) through solid objects, above & below ground level. Not nice. 'pathfinder' in mmaps calculates the most appropriate route between these points on the ground and not below it. The 'Deadmines' were nigh impossible before mmaps. I'm don't think they have an equivalent project for TrinityCore. It will almost certainly be integrated into the core and I know mangosR2 already include it. If you want a better explanation and or wish to know more, take a look at the thread mmaps thread and you can get the code from faramir118's github If you decide to try it out, you will need to extract new maps/vmaps/dbc & of course mmaps, using the utilities you compile from faramir118's source (ad.exe, vmap_extractor_v3.exe, vmap_assembler.exe & movemapgen.exe) for your system. This process can take a couple of days, depending on your system. However the results are well worth it. Once you try it, you won't go back Hope this helps
  5. Yeah, sorry, its laise http://getmangos.eu/community/showthread.php?14110-patch-Small-aura-related-change
  6. It is correct way of how openmp works when forking threads that do their job very quickly. By default, threads will not sleep when waiting for new jobs to appear. It can be controlled by OMP_WAIT_POLICY environment variable http://gcc.gnu.org/onlinedocs/libgomp/OMP_005fWAIT_005fPOLICY.html . However, default (ACTIVE) leads to better performance.
  7. Then you're using the wrong Ad.exe, the one at post 67 was for testing, its not valid anymore, the correct one is in your source when you clone from git. contrib/extractor i believe. He cannot send you maps/vmaps, that is ILLEGAL
  8. Oh, I didn't know that. So I have to "pull" ...github... sharedbots instead of master ! I finally understood something about Github ! )) EDIT : all merged, nothing to edit and working fine ! Blueboy, why did you told me to get playerbot from playerbot/mangos.git ? EDIT2 : hmm not working fine finally... EDIT3 : is it possible to have an updated sharedbot ? or is there a way to do that without messing up
  9. Use that patch for testing. Everything works fine with that.
  10. i need advanced help with updating mangos server to 3.3.5a version. 1.) database to update ? ( mangos or characters or realms ) 2.) from witch number to start update ? [A] You have: --> `9539_01_mangos_spell_bonus_data.sql` You need: --> `10171_01_mangos_mangos_string.sql` 3.) how to update database and how to update core ? I am installer clean new server with this tutorial: http://getmangos.eu/community/viewtopic.php?id=7839 4.) where to find 3.3.5a map dbc vmaps extractor ? Thanks !
  11. How need this backporting ? [crash][map]"]This report and more compatibility with master . based on commits : http://gist.github.com/mangos/mangos/commit/b4431f291db65a851c75c57b9c559a1b825dbb67 http://gist.github.com/mangos/mangos/commit/59fa774aeb79d9260f5eaa82d3b8941f75959095 http://gist.github.com/mangos/mangos/commit/2552914bfe145aab79e46dfc4973d9106778b831 Download patch file http://pastebin.com/uNM661Ve Note : I not testing stability yet .
  12. This isn't really a mangos question but i'll answer it. you can use this search engine here http://www.wowguru.com/db/objectsearch.php to locate Game object ids from official servers, your DB should be simular... If you can not locate the object you want (i've never seen a tower) you can add world objects and such via this post http://getmangos.eu/community/showthread.php?13251-How-to-make-Custom-Game-Objects
  13. Derex said he would look into that. http://getmangos.eu/community/showthread.php?p=51990#post51990 I really hope someone can come up with a working version again.
  14. Maybe You could also include (or at least research) this in Your fix: http://getmangos.eu/community/viewtopic.php?id=15285 ?
  15. proper forum URL as many other 3d-party porjects listed in thread: 3rd party projects (DB, scripting, forks for support different client versions). I can just add that SD2 forum work...
  16. This forum not for discussion DB/Script projects. Official links to known mangos related projects listed in 3rd party projects (DB, scripting, forks for support different client versions) And this is only page where allowed listeding URLs of mangos related DB/scripting projects.
  17. Confirmed, bug still in 9973. Related to http://getmangos.eu/community/showthread.php?12645-update-9503-autot-repeating-spells-behaviour&highlight=wand maybe?
  18. Was this applied, wrong format o forgotten? Sorry to bump Similar question for the following links: http://getmangos.eu/community/showthread.php?12753-[fix]t10-priest-healer-set-bonus http://getmangos.eu/community/showthread.php?12754-[fix]t10-warrior-protection-set-bonus http://getmangos.eu/community/showthread.php?12755-[fix]Shaman-t10-restoration-set-bonus http://getmangos.eu/community/showthread.php?12756-[fix]t10-death-knight-melee-set-bonus http://getmangos.eu/community/showthread.php?12757-[fix]t10-Balance-Druid-set-bonuses http://getmangos.eu/community/showthread.php?12760-[fix]paladin-dk-hunter-t10-procs http://getmangos.eu/community/showthread.php?12761-[fix]t10-paladin-retribution-set-bonus http://getmangos.eu/community/showthread.php?12762-[fix]t10-rogues-set-bonuses-2-4p http://getmangos.eu/community/showthread.php?12763-[fix]t10-elemental-shaman-4p-set-bonus http://getmangos.eu/community/showthread.php?12765-[fix]t10-enhancement-shaman-set-bonuses http://getmangos.eu/community/showthread.php?12767-[fix]t10-warlock-4p-set-bonus http://getmangos.eu/community/showthread.php?12768-[fix]Warrior-t10-dps-set-bonuses
  19. http://getmangos.eu/community/viewtopic.php?id=21776 The requested URL /forum/index.php was not found on this server. this url is broken. mangos-0.12 rev 8569 db: tbcdb 0.0.2.2 scripdev2 - latest rev Talent Improved Scorch doesn't work at all.
  20. What bug does the patch fix? What features does the patch add? Adds cast of absorb shields on totems and on owner with glyph For which repository revision was the patch created? 8946 Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. http://getmangos.eu/community/viewtopic.php?id=10539 http://getmangos.eu/community/viewtopic.php?id=10292 Who has been writing this patch? Please include either forum user names or email addresses. Me DB part UPDATE creature_template SET spell1 = 55328 WHERE entry IN (3579); UPDATE creature_template SET spell1 = 55329 WHERE entry IN (3911); UPDATE creature_template SET spell1 = 55330 WHERE entry IN (3912); UPDATE creature_template SET spell1 = 55332 WHERE entry IN (3913); UPDATE creature_template SET spell1 = 55333 WHERE entry IN (7398); UPDATE creature_template SET spell1 = 55335 WHERE entry IN (7399); UPDATE creature_template SET spell1 = 55278 WHERE entry IN (15478); UPDATE creature_template SET spell1 = 58589 WHERE entry IN (31120); UPDATE creature_template SET spell1 = 58590 WHERE entry IN (31121); UPDATE creature_template SET spell1 = 58591 WHERE entry IN (31122); Core part diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index c4d4792..c08e9f2 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -5247,6 +5247,34 @@ void Spell::EffectScriptEffect(uint32 effIndex) } return; } + case 55328: // Stoneclaw Totem I + case 55329: // Stoneclaw Totem II + case 55330: // Stoneclaw Totem III + case 55332: // Stoneclaw Totem IV + case 55333: // Stoneclaw Totem V + case 55335: // Stoneclaw Totem VI + case 55278: // Stoneclaw Totem VII + case 58589: // Stoneclaw Totem VIII + case 58590: // Stoneclaw Totem IX + case 58591: // Stoneclaw Totem X + { + if ( !unitTarget ) // Stoneclaw Totem owner + return; + // Absorb shield for totems + for(int itr = 0; itr < MAX_TOTEM; ++itr) + { + Unit* totem = ObjectAccessor::GetUnit( *unitTarget, unitTarget->m_TotemSlot[itr] ); + if( totem ) + m_caster->CastCustomSpell( totem, 55277, &damage, NULL, NULL, true ); + } + // Glyph of Stoneclaw Totem + if( Aura* auraGlyph = unitTarget->GetAura( 63298,0 ) ) + { + int32 playerAbsorb = damage * auraGlyph->GetModifier()->m_amount; + m_caster->CastCustomSpell( unitTarget, 55277, &playerAbsorb, NULL, NULL, true ); + } + return; + } case 55693: // Remove Collapsing Cave Aura if(!unitTarget) return; diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 785ea9e..2983e96 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2276,6 +2276,37 @@ void Aura::HandleAuraDummy(bool apply, bool Real) if(m_target->GetTypeId() == TYPEID_PLAYER) ((Player*)m_target)->RemoveAmmo(); // not use ammo and not allow use return; + case 55328: // Stoneclaw Totem I + m_target->CastSpell( m_target, 5728, true ); + return; + case 55329: // Stoneclaw Totem II + m_target->CastSpell( m_target, 6397, true ); + return; + case 55330: // Stoneclaw Totem III + m_target->CastSpell( m_target, 6398, true ); + return; + case 55332: // Stoneclaw Totem IV + m_target->CastSpell( m_target, 6399, true ); + return; + case 55333: // Stoneclaw Totem V + m_target->CastSpell( m_target, 10425, true ); + return; + case 55335: // Stoneclaw Totem VI + m_target->CastSpell( m_target, 10426, true ); + return; + case 55278: // Stoneclaw Totem VII + m_target->CastSpell( m_target, 25513, true ); + return; + case 58589: // Stoneclaw Totem VIII + m_target->CastSpell( m_target, 58583, true ); + return; + case 58590: // Stoneclaw Totem IX + m_target->CastSpell( m_target, 58584, true ); + return; + case 58591: // Stoneclaw Totem X + m_target->CastSpell( m_target, 58585, true ); + return; + } switch(m_spellProto->SpellFamilyName)
  21. will this coef. bug ne fixed on this? http://getmangos.eu/community/showpost.php?p=63429 btw the crit part dont work for quite long time... is it really that hard to fix?
  22. * What bug does the patch fix? Allows mangosd to be shutdown by the Service Control Manager when running as a Service in Windows. * For which repository revision was the patch created? 7252 * Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. http://getmangos.eu/community/viewtopic.php?id=5716 * Who has been writing this patch? Please include either forum user names or email addresses. rilexThis feature has been broken for a couple thousand revs, so I'd be really happy to see it work again. diff --git a/src/mangosd/WorldRunnable.cpp b/src/mangosd/WorldRunnable.cpp index 2e97f97..a4c133d 100644 --- a/src/mangosd/WorldRunnable.cpp +++ b/src/mangosd/WorldRunnable.cpp @@ -36,6 +36,11 @@ #define WORLD_SLEEP_CONST 100 //Is this still needed?? [On linux some time ago not working 50ms] #endif +#ifdef WIN32 +#include "ServiceWin32.h" +extern int m_ServiceStatus; +#endif + /// Heartbeat for the World void WorldRunnable::run() { @@ -70,6 +75,11 @@ void WorldRunnable::run() } else prevSleepTime = 0; + + #ifdef WIN32 + if (m_ServiceStatus == 0) World::StopNow(0); + while (m_ServiceStatus == 2) Sleep(1000); + #endif } sWorld.KickAll(); // save and kick all players
  23. Ok, now thanks to Undergarun and kero99, I have some nice stats to share with you This is the MySQL Server statistics for current mangos server, which is not using prepared statements. Taken from http://getmangos.eu/community/topic/15925/11045patch-multiple-mysql-connections-to-database/: And here are the stats from MySQL for mangos with prepared statements: 42% of DB requests are using prepared statements now (look at the 'stmt execute' graph!) And this is achieved by only 90 requests out of total 900 implemented in mangos core. Another interesting point is that SELECTs dramatically dropped to only 7% of total requests in comparison to up to 28.3% on regular mangos server. This might be due to lowered "Player.SaveInterval" value in config, I'll confirm that with tester. Anyway, fingers crossed on upcoming small patch from fgenesis which will be able to get profiling data on per-DB-request basis. And in turn we will be able to move more queries which are critical to server performance on using prepared statements. P.S. Correct me in case I did wrong interpretation of 'stmt execute' graph. In case of prepared statements, aren't the 'select/delete/insert/update' graphs updated too? Anyone? Cheers to everyone
  24. Not work because mangos still not support vehicles.. you need start here http://getmangos.eu/community/showthread.php?11759-[dev]Vehicles Best regards
  25. IsPositiveEffect() currently does not return the correct value for periodic triggering auras in every cases. The logic used is based on that fact, that normally the dummy aura, that is used in all class spells - using any periodic triggering aura - is the first spell effect (maybe see more here to this issue: http://getmangos.eu/community/viewtopic.php?id=8653). So while iterating over all effects this dummy aura (with a !IsPositiveTarget) is found first and the whole spell is considered as a negative. The problem is that the ordering of the different spelleffects is not always like that (dummy aura at first spell effect). Especially "Mind Flay" (http://www.wowhead.com/?spell=15407). So in the end this causes a bug, that you can not cast a high rank of mind flay on a low level mob because of such an iteration in checkcast(). Here is my suggestion to make it work correct: --old patch removed-- One additional note: IsPositiveTarget() always returns false for TARGET_SINGLE_ENEMY (that is used by those periodic triggered spells), which is not always correct (e.g. "Penance"), but as far as I can evaluate that, it won't cause problems for now at no place in the code (IsPositiveEffect, canReflect). ------------------------------------------------- Edit 30.07.09: As I discovered with the help of nos4r2zod, I understood IsPositiveEffect() the wrong way. Periodic triggering auras are positive, if they are at the caster and cast their spells on the (harmful) target. So the logic used is in fact right besides a typo :-/. The real problem is, that in CheckCast() and SelectAuraRankForPlayerLevel() the client provided unit target is used, to check, if the spells level fits to the targets level. The problem is, that this unit target is not the correct target in every case. For example with those periodic trigggering auras, the triggering aura has TARGET_SELF (EffectImplicitTarget), so it does not have to do anything with the unit target. So we get this "SPELL_FAILED_LOWLEVEL" here if "Mindflay" is casted on a low level target. If there wasn't this above mentioned typo, "Mindflay" would just be downranked in SelectAuraRankForPlayerLevel() bout would work at least^^. Other similar spells like "Arcane Missiles" won't suffer of this problem because they have -whyever- SPELL_ATTR_EX_NEGATIVE, so they are always considere as negative. Maybe it has to do with ordering of the spelleffects, that blizz does not need this flag in it's own code, ... I don't know^^ Anyway, here is a piece of code in witch I tried to seperate witch implicit target types are using the client provided unit target an which don't (and fix the typo, of course). In fact I don't like it to add one more of this helper function to the spellmanager, but this is the most generic way I found for now :-/ From ad16688f1066e96525c97dd8d7fa2eaff86bff04 Mon Sep 17 00:00:00 2001 From: pasdVn <[email protected]> Date: Sun, 26 Jul 2009 12:12:31 +0200 Subject: [PATCH] fix in checkcast * prevent using the client sended unit target for spelleffects using an independent implicit target --- src/game/Spell.cpp | 4 +++- src/game/SpellMgr.cpp | 29 +++++++++++++++++++++++++++-- src/game/SpellMgr.h | 2 ++ 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index cdd2247..9e98f7c 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -3754,7 +3754,9 @@ SpellCastResult Spell::CheckCast(bool strict) // this case can be triggered if rank not found (too low-level target for first rank) if(m_caster->GetTypeId() == TYPEID_PLAYER && !IsPassiveSpell(m_spellInfo->Id) && !m_CastItem) for(int i=0;i<3;++i) - if(IsPositiveEffect(m_spellInfo->Id, i) && m_spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AURA) + if( IsPositiveEffect(m_spellInfo->Id, i) && + IsUnitTargetUsingTarget(m_spellInfo->EffectImplicitTargetA[i], m_spellInfo->EffectImplicitTargetB[i]) && + m_spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AURA ) if(target->getLevel() + 10 < m_spellInfo->spellLevel) return SPELL_FAILED_LOWLEVEL; } diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 86816e5..b0d3080 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -292,6 +292,29 @@ bool IsPositiveTarget(uint32 targetA, uint32 targetB) return true; } +bool IsUnitTargetUsingTarget(uint32 targetA, uint32 targetB) +{ + switch(targetA) + { + case TARGET_CHAIN_DAMAGE: + case TARGET_CHAIN_HEAL: + case TARGET_SINGLE_FRIEND: + case TARGET_SINGLE_FRIEND_2: + case TARGET_SINGLE_PARTY: + case TARGET_NONCOMBAT_PET: + case TARGET_DUELVSPLAYER: + case TARGET_AREAEFFECT_PARTY_AND_CLASS: + case TARGET_CURRENT_ENEMY_COORDINATES: + case TARGET_BEHIND_VICTIM: + return true; + default: + break; + } + if (targetB) + return IsUnitTargetUsingTarget(targetB,0); + return false; +} + bool IsPositiveEffect(uint32 spellId, uint32 effIndex) { SpellEntry const *spellproto = sSpellStore.LookupEntry(spellId); @@ -358,6 +381,7 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex) case SPELL_AURA_ADD_TARGET_TRIGGER: return true; case SPELL_AURA_PERIODIC_TRIGGER_SPELL: + case SPELL_AURA_PERIODIC_TRIGGER_SPELL_WITH_VALUE: if(spellId != spellproto->EffectTriggerSpell[effIndex]) { uint32 spellTriggeredId = spellproto->EffectTriggerSpell[effIndex]; @@ -370,7 +394,7 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex) { // if non-positive trigger cast targeted to positive target this main cast is non-positive // this will place this spell auras as debuffs - if(IsPositiveTarget(spellTriggeredProto->EffectImplicitTargetA[effIndex],spellTriggeredProto->EffectImplicitTargetB[effIndex]) && !IsPositiveEffect(spellTriggeredId,i)) + if(IsPositiveTarget(spellTriggeredProto->EffectImplicitTargetA[i],spellTriggeredProto->EffectImplicitTargetB[i]) && !IsPositiveEffect(spellTriggeredId,i)) return false; } } @@ -1577,7 +1601,8 @@ SpellEntry const* SpellMgr::SelectAuraRankForPlayerLevel(SpellEntry const* spell bool needRankSelection = false; for(int i=0;i<3;++i) { - if( IsPositiveEffect(spellInfo->Id, i) && ( + if( IsPositiveEffect(spellInfo->Id, i) && + IsUnitTargetUsingTarget(spellInfo->EffectImplicitTargetA[i], spellInfo->EffectImplicitTargetB[i]) && ( spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AURA || spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AREA_AURA_PARTY || spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AREA_AURA_RAID diff --git a/src/game/SpellMgr.h b/src/game/SpellMgr.h index a97515f..3d27b4c 100644 --- a/src/game/SpellMgr.h +++ b/src/game/SpellMgr.h @@ -191,6 +191,8 @@ bool IsPositiveSpell(uint32 spellId); bool IsPositiveEffect(uint32 spellId, uint32 effIndex); bool IsPositiveTarget(uint32 targetA, uint32 targetB); +bool IsUnitTargetUsingTarget(uint32 targetA, uint32 targetB); + bool IsSingleTargetSpell(SpellEntry const *spellInfo); bool IsSingleTargetSpells(SpellEntry const *spellInfo1, SpellEntry const *spellInfo2); -- 1.6.0.2.1172.ga5ed0 Github: http://github.com/pasdVn/mangos/commit/c98e43e12207fe697e2812d211c13aa638535f93.patch Sorry for writing that much to such a small problem. Just tried to make my thougts a bit reproducable
×
×
  • 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