Woweur
Members-
Posts
104 -
Joined
-
Last visited
Never -
Donations
0.00 GBP
Content Type
Profiles
Bug Tracker
Wiki
Release Notes
Forums
Downloads
Blogs
Events
Everything posted by Woweur
-
Structures between 4.0.1 and 4.0.3 are not changed.
-
If you have opcode in 4.0.1, it's very easy to convert it for 4.0.3.
-
Or you can patch wow.exe directly... Or you can make a loader, that will patch memory instead (looks more optimal)... Anyway, we need to modify the client
-
Random opcode isn't a big deal, in fact you can generate 80 % of SMSG automaticly (just parsing wow.asm). If we can have 100% of opcode for one build of 4.0.1, we can make a little tool to generate all opcode id with patern for example. No, the real problem is SMSG_REDIRECT_CLIENT, because we need to send this packet to client. We know how to decrypt this packet (the key to decrypt is in the client), but we don't know how to encrypt server-side ... The only way, for now to bypass this opcode is inject a dll ...
-
So dbc are wrong, wowhead use the dbc file
-
I already use make -j 8 (I7)
-
I use precompiled patch for GCC, and i don't save a lot of time ... And i compare with debian, on GCC.
-
Hi, i have a little "problem" when i compile MaNGOS on MacOSX with gcc (i have try with gcc 4.2, 4.3 & 4.5). In fact, the compilation of the project game is very slow (20-30 mins). On debian, i haven't that problem with the similary hardware. My hardware config : I7 2.66 GHZ SSD 4 GO I don't understand because on debian, the compilation of the game project is 2-3 mins Thx.
-
My first time on Mac OS X
Woweur replied to Auntie Mangos's topic in OldInstallation, configuration & upgrades
Look at http://getmangos.eu/wiki/Compile_MaNGOS_On_Mac_OS_X, make sure you have download the dev package of MySQL and apply " sudo ln -s /usr/local/mysql/include /usr/include/mysql" and "sudo ln -s /usr/local/mysql/lib /usr/lib/mysql" -
I will try your's wmap rewrite soon with ~2.6K ppl, and i repport here performance and bug issue. Thanks you for the work !
-
Thank you for that, it's a very usefull tool for fix spell in MaNGOS, find SpellFamilyMask, find attribute ...etc.
-
Yeah, i have the same.
-
With your patch, i have two problems : - A lot of spell (like arcane projectile) cast on yourself, with damage on yourself. - I have one crash (i haven't a crashlog now, but i can have it).
-
spell_work for 3.3.3a : http://filebeam.com/5f5a85a31a8b1315115376b319298724
-
m_target can't be null, because the function is call by m_target class. the pCaster pointer is delete, it's multi-thread problem i think (personaly, i have fix this problem with mutex, i can post my fix if you want...).
-
I think it's better to handle a calcule in thread for that.
-
How to use gprof (profiler) with MaNGOS ?
Woweur replied to Auntie Mangos's topic in OldGeneral discussion
Useless post ? So, no everything isn't runs on a single thread, socket (WorldSocket::Update()) is in other thread. But, yes AchievementMgr::UpdateAchievementCriteria is in main thread and it's not difficult to create a thread to handle the achievement. For "Cell::Cell(CoordPair<1024u> const&)", it's possible to use pre-calculed value. -
How to use gprof (profiler) with MaNGOS ?
Woweur replied to Auntie Mangos's topic in OldGeneral discussion
Ok, i have solved my problem : MaNGOS must be closed normaly for make a gmon.out. I have make a dump, with 2.5 k ppl in 1 hour uptime Flat profile: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 6.11 36.70 36.70 187541438 0.00 0.00 WorldSocket::Update() 5.62 70.46 33.76 4432264 0.00 0.00 AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes, unsigned int, unsigned int, Unit*, unsigned int) 3.50 91.51 21.05 26155543 0.00 0.00 Object::BuildValuesUpdate(unsigned char, ByteBuffer*, UpdateMask*, Player*) const 2.94 109.17 17.66 void VMAP::TreeNode::intersectRay<VMAP::IntersectionCallBack<VMAP::TriangleBox>, VMAP::TreeNode, VMAP::TriangleBox>(G3D::Ray const&, VMAP::IntersectionCallBack<VMAP::TriangleBox>&, float&, VMAP::NodeValueAccess<VMAP::TreeNode, VMAP::TriangleBox> const&, bool, bool) const 2.78 125.90 16.74 651569430 0.00 0.00 AchievementMgr::IsCompletedCriteria(AchievementCriteriaEntry const*, AchievementEntry const*) 2.60 141.53 15.63 353754301 0.00 0.00 Cell::Cell(CoordPair<1024u> const&) 2.32 155.46 13.93 3125345327 0.00 0.00 Object::GetUInt32Value(unsigned short) const 2.30 169.26 13.80 7294104 0.00 0.00 Object::_SetUpdateBits(UpdateMask*, Player*) const 2.15 182.16 12.90 15979322 0.00 0.00 Unit::_UpdateSpells(unsigned int) 2.11 194.82 12.66 196500869 0.00 0.00 MaNGOS::MessageDeliverer::Visit(GridRefManager<Player>&) 2.04 207.07 12.25 2509259284 0.00 0.00 Map::getNGrid(unsigned int, unsigned int) const 1.73 217.47 10.40 4230911 0.00 0.00 Unit::RemoveAurasWithInterruptFlags(unsigned int) 1.62 227.20 9.73 103419779 0.00 0.00 WorldSocket::SendPacket(WorldPacket const&) 1.42 235.71 8.51 757942 0.00 0.00 WorldObject::BuildUpdateData(std::tr1::unordered_map<Player*, UpdateData, std::tr1::hash<Player*>, std::equal_to<Player*>, std::allocator<std::Pair<Player* const, UpdateData> > >&) 1.39 244.08 8.37 2283 0.00 0.01 AuctionHouseObject::BuildListAuctionItems(WorldPacket&, Player*, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int&, unsigned int&) 1.26 251.67 7.60 813909499 0.00 0.00 std::vector<unsigned char, std::allocator<unsigned char> >::_M_fill_insert(__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, unsigned char const&) 1.23 259.09 7.42 203383608 0.00 0.00 Aura::Update(unsigned int) 1.12 265.85 6.76 15303679 0.00 0.00 Unit::Update(unsigned int) 1.10 272.47 6.62 47294526 0.00 0.00 MaNGOS::CreatureRelocationNotifier::Visit(GridRefManager<Creature>&) 1.07 278.91 6.44 96557 0.00 0.00 Player::learnSkillRewardedSpells(unsigned int, unsigned int) 1.06 285.30 6.39 14757682 0.00 0.00 void Map::Visit<MaNGOS::SingleThreaded<ACE_RW_Thread_Mutex>::Lock, MaNGOS::ObjectUpdater, TypeMapContainer<TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > >(CellLock<MaNGOS::SingleThreaded<ACE_RW_Thread_Mutex>::Lock> const&, TypeContainerVisitor<MaNGOS::ObjectUpdater, TypeMapContainer<TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > >&) 1.04 291.53 6.23 126193 0.00 0.00 Map::ProcessRelocationNotifies(unsigned int) 1.00 297.53 6.00 8236442 0.00 0.00 Player::UpdateVisibilityOf(WorldObject const*, WorldObject*) 0.98 303.45 5.92 833478576 0.00 0.00 ByteBuffer::append(unsigned char const*, unsigned long) 0.93 309.06 5.62 12979767 0.00 0.00 Creature::Update(unsigned int) 0.89 314.42 5.36 908884950 0.00 0.00 Object::GetUInt64Value(unsigned short) const 0.86 319.56 5.14 17174090 0.00 0.00 MotionMaster::UpdateMotion(unsigned int) 0.80 324.38 4.82 21499661 0.00 0.00 MaNGOS::PlayerRelocationNotifier::Visit(GridRefManager<Creature>&) 0.79 329.14 4.76 420155321 0.00 0.00 Map::EnsureGridLoaded(Cell const&) 0.79 333.88 4.74 571598 0.00 0.00 Player::HandleStealthedUnitsDetection() 0.77 338.52 4.64 9066965 0.00 0.00 AreaAura::Update(unsigned int) 0.77 343.13 4.61 101780787 0.00 0.00 WorldSession::SendPacket(WorldPacket const*) 0.76 347.71 4.58 56271794 0.00 0.00 Unit::isVisibleForOrDetect(Unit const*, WorldObject const*, bool, bool, bool) const 0.74 352.17 4.47 537378309 0.00 0.00 WorldObject::GetMap() const 0.73 356.55 4.38 46112045 0.00 0.00 Item::GetProto() const 0.64 360.41 3.86 145769791 0.00 0.00 WorldObject::_IsWithinDist(WorldObject const*, float, bool) const 0.64 364.24 3.83 236569711 0.00 0.00 Object::HasFlag(unsigned short, unsigned int) const 0.63 368.03 3.79 15996998 0.00 0.00 void MaNGOS::ObjectUpdater::Visit<GameObject>(GridRefManager<GameObject>&) 0.62 371.75 3.72 386199656 0.00 0.00 Map::loaded(CoordPair<64u> const&) const 0.58 375.23 3.48 362832 0.00 0.00 std::_Rb_tree<unsigned long, unsigned long, std::_Identity<unsigned long>, std::less<unsigned long>, std::allocator<unsigned long> >::_M_copy(std::_Rb_tree_node<unsigned long> const*, std::_Rb_tree_node<unsigned long>*) 0.57 378.67 3.44 52508354 0.00 0.00 Unit::IsTriggeredAtSpellProcEvent(Unit*, Aura*, SpellEntry const*, unsigned int, unsigned int, WeaponAttackType, bool, bool, SpellProcEventEntry const*&) 0.55 381.98 3.31 10298734 0.00 0.00 Aura::GetCaster() const 0.53 385.19 3.21 321611 0.00 0.00 Map::Update(unsigned int const&) 0.51 388.28 3.09 897295 0.00 0.00 Player::_SetCreateBits(UpdateMask*, Player*) const 0.51 391.36 3.08 7565 0.00 0.00 SocialMgr::BroadcastToFriendListers(Player*, WorldPacket*) 0.51 394.41 3.05 17842821 0.00 0.00 Object::_SetCreateBits(UpdateMask*, Player*) const 0.48 397.31 2.90 413079430 0.00 0.00 NGrid<16u, Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > >, MaNGOS::SingleThreaded<Player> >::getGridType(unsigned int const&, unsigned int const&) 0.47 400.13 2.82 10306213 0.00 0.00 void Map::Visit<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex>, MaNGOS::PlayerRelocationNotifier, TypeMapContainer<TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > >(CellLock<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex> > const&, TypeContainerVisitor<MaNGOS::PlayerRelocationNotifier, TypeMapContainer<TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > >&) 0.45 402.86 2.73 5956818 0.00 0.00 WorldSocket::handle_input_missing_data() 0.45 405.57 2.71 18570120 0.00 0.00 ObjectAccessor::FindPlayer(unsigned long) 0.45 408.27 2.70 6038022 0.00 0.00 WorldSession::Update(unsigned int) 0.43 410.85 2.58 24012139 0.00 0.00 void Player::UpdateVisibilityOf<Creature>(WorldObject const*, Creature*, UpdateData&, std::set<Unit*, std::less<Unit*>, std::allocator<Unit*> >&) 0.43 413.41 2.56 40870 0.00 0.00 Player::BuildPlayerTalentsInfoData(WorldPacket*) 0.39 415.76 2.35 428955740 0.00 0.00 Map::EnsureGridCreated(CoordPair<64u> const&) 0.39 418.09 2.33 68997989 0.00 0.00 Map::GetCreature(unsigned long) 0.38 420.38 2.29 ReactorRunnable::svc() 0.37 422.60 2.22 15950817 0.00 0.00 WorldSocket::handle_output(int) 0.36 424.76 2.16 24461828 0.00 0.00 Object::GetByteValue(unsigned short, unsigned char) const 0.34 426.82 2.06 2393369 0.00 0.00 Unit::SendAurasFor(Player*) 0.34 428.88 2.06 4400761 0.00 0.00 WorldSession::HandleMovementOpcodes(WorldPacket&) 0.34 430.92 2.04 47613342 0.00 0.00 SpellMgr::IsRankSpellDueToSpell(SpellEntry const*, unsigned int) const 0.34 432.94 2.02 1195214 0.00 0.00 Unit::ProcDamageAndSpellFor(bool, Unit*, unsigned int, unsigned int, WeaponAttackType, SpellEntry const*, unsigned int) 0.33 434.91 1.97 10727611 0.00 0.00 MaNGOS::PlayerRelocationNotifier::Visit(GridRefManager<Player>&) 0.31 436.78 1.87 194302888 0.00 0.00 void Map::Visit<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex>, MaNGOS::MessageDeliverer, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > >(CellLock<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex> > const&, TypeContainerVisitor<MaNGOS::MessageDeliverer, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > >&) 0.31 438.62 1.84 16957391 0.00 0.00 void Map::Visit<MaNGOS::SingleThreaded<ACE_RW_Thread_Mutex>::Lock, MaNGOS::ObjectUpdater, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > >(CellLock<MaNGOS::SingleThreaded<ACE_RW_Thread_Mutex>::Lock> const&, TypeContainerVisitor<MaNGOS::ObjectUpdater, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > >&) 0.31 440.46 1.84 3585977 0.00 0.00 Player::Update(unsigned int) 0.30 442.27 1.81 227 0.01 0.01 Player::resetTalents(bool) 0.28 443.98 1.71 9416892 0.00 0.00 Unit::IsHostileTo(Unit const*) const 0.28 445.68 1.70 821533 0.00 0.00 Player::addSpell(unsigned int, bool, bool, bool, bool) 0.28 447.34 1.66 102601150 0.00 0.00 AuthCrypt::EncryptSend(unsigned char*, unsigned long) 0.26 448.93 1.59 33838264 0.00 0.00 MaNGOS::ObjectMessageDeliverer::Visit(GridRefManager<Player>&) 0.26 450.51 1.58 18685512 0.00 0.00 void Player::UpdateVisibilityOf<GameObject>(WorldObject const*, GameObject*, UpdateData&, std::set<Unit*, std::less<Unit*>, std::allocator<Unit*> >&) 0.25 452.02 1.51 463655296 0.00 0.00 utf8::internal::utf_error utf8::internal::validate_next<char const*>(char const*&, char const*, unsigned int*) 0.25 453.51 1.49 6395036 0.00 0.00 Map::GetCreatureOrPetOrVehicle(unsigned long) 0.25 454.99 1.48 578224 0.00 0.00 Aura::ReapplyAffectedPassiveAuras(Unit*, bool) 0.22 456.30 1.32 7811340 0.00 0.00 GameObject::Update(unsigned int) 0.22 457.61 1.31 24400509 0.00 0.00 MaNGOS::CreatureRelocationNotifier::Visit(GridRefManager<Player>&) -
Yes, but only when i have finish, because i'm work on a old MaNGOS's revision, and i must adapt the patch ...
-
Yeah, i'm work to the patch. Actually, i have 4-5 hours uptime with 3.5 k without any lags . But, the map restarter doesn't work because i have add a lot of mutex for avoid crash, and if map restart, mutex are not release
-
How to use gprof (profiler) with MaNGOS ?
Woweur replied to Auntie Mangos's topic in OldGeneral discussion
Hi, i want use gprof with MaNGOS (gprof is a gnu profiler, for find what code is long to execute). I have read on the gprof website, i must add "-pg" in a configure's flags but if i do that, MaNGOS not generate a gmon.out file. Thanks you -
Because i'm work on old revision, and i have just adapt the patch for new revision of MaNGOS.
-
Hi, i'm currently work on a implantation of npc on transports. For now, we can spawn a npc on a transport with db support (new table, creature_transport). I have make a little support for pet on transport, but it's no perfect (some bug). We need a support for creature movement on transport (for fight on transport, for example). But the major problem is, we must work with transport position base, and not a general base. Patch link : http://filebin.ca/nwrgd/npc_transport.diff SQL link : http://filebin.ca/bwtuon/creature_transport.sql
-
Program received signal SIGSEGV, Segmentation fault. [switching to Thread 0x43fc2950 (LWP 10381)] WorldSession::SendDoFlight (this=0x7f235c371dc0, mountDisplayId=0, path=506, pathNode=0) at ../../../src/game/TaxiHandler.cpp:120 120 if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) #0 WorldSession::SendDoFlight (this=0x7f235c371dc0, mountDisplayId=0, path=506, pathNode=0) at ../../../src/game/TaxiHandler.cpp:120 #1 0x00000000006f19dd in Player::ActivateTaxiPathTo (this=0x7f23433201b0, nodes=<value optimized out>, npc=0x0, spellid=32474) at ../../../src/game/Player.cpp:17926 #2 0x00000000006f1b29 in Player::ActivateTaxiPathTo (this=0x7f23433201b0, taxi_path_id=<value optimized out>, spellid=32474) at ../../../src/game/Player.cpp:17943 #3 0x0000000000718634 in Aura::ApplyModifier (this=0x7f2343326490, apply=false, Real=250) at ../../../src/game/SpellAuras.cpp:1015 #4 0x00000000007ce1b8 in Unit::AddAura (this=0x7f23433201b0, Aur=0x7f2343326490) at ../../../src/game/Unit.cpp:3987 #5 0x00000000006b0b47 in Player::_LoadAuras (this=0x7f23433201b0, result=0xca49590, timediff=2946) at ../../../src/game/Player.cpp:15488 #6 0x00000000006f8356 in Player::LoadFromDB (this=0x7f23433201b0, guid=421014, holder=0x7f233485f590) at ../../../src/game/Player.cpp:15195 #7 0x0000000000880ff6 in WorldSession::HandlePlayerLogin ( this=0x7f235c371dc0, holder=0x7f233485f590) at ../../../src/game/CharacterHandler.cpp:575 #8 0x00000000008a11cf in SqlResultQueue::Update (this=0x4fd1280) at ../../../../src/shared/Database/SqlOperations.cpp:77 #9 0x00000000007ec70c in World::Update (this=0x7f2368023580, diff=753) at ../../../src/game/World.cpp:2452 #10 0x00000000004e92cc in WorldRunnable::run (this=<value optimized out>) at ../../../src/mangosd/WorldRunnable.cpp:60 #11 0x00000000008a9ecc in ACE_Based::Thread::ThreadTask (param=0x0) This crash happen because, when WorldSession::SendDoFlight is call by Player::LoadFromDB by AddAura, a GetPlayer() is null pointer of Session class because SetPlayer(pCurChar) is call after Player::LoadFromDB.
Contact Us
To contact us
click here
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
Copyright © getMaNGOS. All rights Reserved.
This website is in no way associated with or endorsed by Blizzard Entertainment®
This website is in no way associated with or endorsed by Blizzard Entertainment®