TrinityCore
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Todo List
Member account_commandscript::HandleAccountDeleteCommand (ChatHandler *handler, std::string accountName)
This function has to be enhanced to respect the login/realm split (delete char, delete account chars in realm then delete account)
Member ACHIEVEMENT_CRITERIA_TYPE_EQUIP_ITEM
in some cases map not present, and in some cases need do without die
Member ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LINE
target entry is missing
Member ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN
73: Achievements 1515, 1241, 1103 (Name: Mal'Ganis)
Member ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED_ON_LOOT
itemlevel is mentioned in text but not present in dbc
Member ACHIEVEMENTS_DESTRUCTION_DERBY_H
: Has to be implemented
Member ACHIEVEMENTS_STONE_KEEPER_100
: Has to be implemented
Member ACHIEVEMENTS_STONE_KEEPER_1000
: Has to be implemented
Member ACHIEVEMENTS_STONE_KEEPER_250
: Has to be implemented
Member ACHIEVEMENTS_STONE_KEEPER_500
: Has to be implemented
Member ACHIEVEMENTS_WG_GNOMESLAUGHTER
: Has to be implemented
Member ACHIEVEMENTS_WG_MASTER_A
: Has to be implemented
Member ACHIEVEMENTS_WG_MASTER_H
: Has to be implemented
Member ACHIEVEMENTS_WG_RANGER
: Has to be implemented
Member ACHIEVEMENTS_WG_TOWER_CANNON_KILL
: Has to be implemented
Member ACHIEVEMENTS_WG_TOWER_DESTROY
: Has to be implemented
Member ACHIEVEMENTS_WIN_WG_TIMER_10
: Has to be implemented
Member ArenaTeam::GetRatingMod (uint32 ownRating, uint32 opponentRating, bool won)
Replace this hack with using the confidence factor (limiting the factor to 2.0f)
Member Aura::_UnapplyForTarget (Unit *target, Unit *caster, AuraApplication *auraApp)
Figure out why this happens
Member Aura::GetProcEffectMask (AuraApplication *aurApp, ProcEventInfo &eventInfo, TimePoint now) const

this needs to be unified for all kinds of auras

Member Aura::HandleAuraSpecificMods (AuraApplication const *aurApp, Unit *caster, bool apply, bool onReapply)
This should be moved to similar function in spell::hit
Member Aura::UpdateTargetMap (Unit *caster, bool apply=true)
There is a crash caused by shadowfiend load addon
Member AuraEffect::CleanupTriggeredSpells (Unit *target)
is there a spell flag, which can solve this in a more sophisticated way?
Member AuraEffect::HandleAuraDummy (AuraApplication const *aurApp, uint8 mode, bool apply) const
drop aura charges for ApplySpellMod in ProcDamageAndSpell
Member AuraEffect::HandleAuraPreventRegeneratePower (AuraApplication const *aurApp, uint8 mode, bool apply) const
possible use of miscvalueb instead of amount
Member AV_BUFF_ARMOR
: Add all other buffs here
Member AV_NEUTRAL_TEAM
: get the right value.. this is currently 20 minutes
Member AV_SOUND_ALLIANCE_ASSAULTS
: Not confirmed yet
Member AV_SOUND_NEAR_VICTORY
: get out if there comes a sound when neutral team captures mine
Member Battlefield::HandlePlayerEnterZone (Player *player, uint32 zone)
Send a packet to announce it to player
Member Battlefield::InvitePlayerToWar (Player *player)
needed ?
Member Battleground::_ProcessJoin (uint32 diff)
add arena sound PlaySoundToAll(SOUND_ARENA_START);
Member Battleground::AddSpiritGuide (uint32 type, float x, float y, float z, float o, TeamId teamId=TEAM_NEUTRAL)
Fix display here
Member Battleground::BgObjects
make this protected:
Member BattlegroundAB::_NodeOccupied (uint8 node, Team team)
working, scripted peons spawning
Member BattlegroundAV::AddAVCreature (uint16 cinfoid, uint16 type)

look if this can be done by database + also add this for the wingcommanders

find a way to add a motionmaster without killing the creature (i

Member BattlegroundAV::ChangeMineOwner (uint8 mine, uint32 team, bool initial=false)

just set the respawntime to 999999

here also

Member BattlegroundAV::EndBattleground (uint32 winner) override
add enterevademode for all attacking creatures
Member BattlegroundAV::HandleQuestComplete (uint32 questid, Player *player) override
add reputation, events (including quest not available anymore, next quest available, go/npc de/spawning)and maybe honor
Member BattlegroundAV::RemovePlayer (Player *player, ObjectGuid guid, uint32 team) override
search more buffs
Class BfWGCoordGY

Implement proper support for vehicle+player teleportation

Use spell victory/defeat in wg instead of RewardMarkOfHonor() && RewardHonor

Add proper implement of achievement

Member BG_AV_CreatureInfo [AV_NPC_INFO_MAX]
: this array should be removed, the only needed things are the entrys (for spawning(?) and handlekillunit)
Member boss_akilzon::boss_akilzonAI::UpdateAI (uint32 diff) override
: fix it in correct way, that causes player to can fly until logout
Member boss_elder_nadox::UpdateAI (uint32 diff) override

: summoned by egg

: summoned by egg

Member boss_eregos::SummonedCreatureDespawn (Creature *summon) override
: See why the spell is not cast
Member boss_gatewatcher_iron_hand::UpdateAI (uint32 diff) override
expect cast this about 5 times in a row (?), announce it by emote only once
Member boss_grand_warlock_nethekurse::boss_grand_warlock_nethekurseAI::DoTauntPeons ()
kill the peons first
Member boss_jeklik::JustEngagedWith (Unit *who) override
: Intro sequence with movement
Member boss_jeklik::UpdateAI (uint32 diff) override
: One Gurubashi Bat Rider should be spawned at -12301.7 -1371.29 145.092 4.74729 or -12298 -1368.51 145.398 4.79965 They're uninteractible, passive and simply flies on paths, throwing bombs. Despawns at path end
Member boss_kiljaeden::boss_kiljaedenAI::UpdateAI (uint32 diff) override
Timer
Member boss_king_dred::SpellHit (WorldObject *, SpellInfo const *spellInfo) override
: This is wrong. Engage nearby alive not yet engaged raptor instead
Member boss_koralon::JustEngagedWith (Unit *who) override

check timer

check timer

Member boss_krick::UpdateAI (uint32 diff) override
Tyrannus starts killing Krick.
Member boss_laj::UpdateAI (uint32 diff) override
: Don't apply same aura twice in a row and don't transform to shadow if the event is executed first time
Member boss_lieutenant_drake::UpdateAI (uint32 diff) override
make this work
Member boss_onyxia::UpdateAI (uint32 diff) override
: In what cases is this null? What should we do?
Member boss_sapphiron::UpdateAI (uint32 diff) override
: at this point it should already despawn, probably that spell is used in another place
Member boss_sjonnir::EnterEvadeMode (EvadeReason) override
: Despawn Brann too but respawn his pre-fight version (https://www.youtube.com/watch?v=hxAxbjGfuDw)
Member boss_sjonnir::JustEngagedWith (Unit *who) override
: Schedule both in combat and out of combat
Member boss_twinemperorsAI::JustEngagedWith (Unit *who) override
we should activate the other boss location so he can start attackning even if nobody
Class boss_viscidus
Not sure if its correct
Member ByteBuffer::read< std::string > ()
Make a ByteBuffer.cpp and move all this inlining to it.
Member Creature::CanStartAttack (Unit const *u, bool force) const
should switch to range attack
Member Creature::DoFleeToGetAssistance ()
use 31365
Member Creature::isCanInteractWithBattleMaster (Player *player, bool msg) const
Rename these properly
Member Creature::SelectVictim ()
a vehicle may eat some mob, so mob should not evade
Member Creature::UpdateLevelDependantStats ()
Why is this treated as uint32 when it's a float?
Member DatabaseWorkerPool< T >::DirectCommitTransaction (SQLTransaction< T > &transaction)
More elegant way
Member EscortAI::Start (bool isActiveAttacker=true, bool run=false, ObjectGuid playerGUID=ObjectGuid::Empty, Quest const *quest=nullptr, bool instantRespawn=false, bool canLoopPath=false, bool resetWaypoints=true)
get rid of this many variables passed in function.
Member FollowerAI::JustDied (Unit *) override
need a better check for quests with time limit.
Member GameEventMgr::GameEventSpawn (int16 event_id)
find out when it is add to map
Member GameEventMgr::LoadFromDB ()
Change to uint8
Member GameObject::Update (uint32 p_time) override

This is activation radius. Casting radius must be selected from spell data.

this hack with search required until GO casting not implemented

nullptr target won't work for target type 1

Member GameObject::Use (Unit *user)

I do not understand this hack. Need some explanation.

find reasonable value for fishing hole search

Member GmTicket::_needMoreHelp
find out the use of this, and then store it in DB
Member go_tablet_of_the_seven::go_tablet_of_the_sevenAI::OnGossipHello (Player *player) override
use gossip option ("Transcript the Tablet") instead, if Trinity adds support.
Member gobject_commandscript::HandleGameObjectAddCommand (ChatHandler *handler, GameObjectEntry objectId, Optional< int32 > spawnTimeSecs)
is it really necessary to add both the real and DB table guid here ?
Class Group
uninvite people that not accepted invite
Member Guardian::InitStatsForLevel (uint8 level)
Move stat mods code to pet passive auras
Member Guardian::UpdateDamagePhysical (WeaponAttackType attType) override
: remove this
Member Guild::BankMoveItemData::LogAction (MoveItemData *pFrom) const override
Move this to scripts
Member Guild::SendBankList (WorldSession *session=nullptr, uint8 tabId=0, bool fullUpdate=false, SlotIds *slots=nullptr) const
- Probably this is just sent to session + those that have sent CMSG_GUILD_BANKER_ACTIVATE
Member instance_eye_of_eternity::instance_eye_of_eternity_InstanceMapScript::SpawnGameObject (uint32 entry, Position const &pos)
this should be handled in map, maybe add a summon function in map
Member instance_karazhan::instance_karazhan_InstanceMapScript::OnGameObjectCreate (GameObject *go) override
Set Object visibilities for Opera based on performance
Member InstanceMap::AddPlayerToMap (Player *) override
Not sure about checking player level: already done in HandleAreaTriggerOpcode
Member InstanceMap::CreateInstanceData (bool load)
make a global storage for this
Member InstanceSave::m_playerList
: Check if maybe it's enough to just store the number of players/groups
Member InstanceSaveManager::_ResetOrWarnAll (uint32 mapid, Difficulty difficulty, bool warn, time_t resetTime)
delete creature/gameobject respawn times even if the maps are not loaded
Member lfg::LFGGroupScript::OnRemoveMember (Group *group, ObjectGuid guid, RemoveMethod method, ObjectGuid kicker, char const *reason) override
- Update internal kick cooldown of kicker
Member lfg::LFGPlayerScript::OnLogin (Player *player, bool loginFirst) override
- Restore LfgPlayerData and send proper status to player if it was in a group
Member lookup_commandscript::HandleLookupTitleCommand (ChatHandler *handler, char const *args)
: implement female support
Member LootTemplate::LootGroup::Verify (LootStore const &lootstore, uint32 id, uint8 group_id) const
replace with 100% when DBs will be ready
Member LootTemplate::Verify (LootStore const &store, uint32 Id) const
References validity checks
Member Map::AddToMap (T *)
Needs clean up. An object should not be added to map twice.
Member Map::DeleteFromWorld (Player *player)
I do not know why we need this, it should be removed in ~Object anyway
Member Map::MoveAllCreaturesInMoveList ()
pets will disappear if this is outside CreatureRespawnRelocation
Member MapManager::IsValidMAP (uint32 mapid, bool startUp)
add check for battleground template
Member Movement::MoveSpline::init_spline (MoveSplineInitArgs const &args)
what to do in such cases? problem is in input data (all points are at same coords)
Member MOVEMENTFLAG_MASK_PLAYER_ONLY
if needed: add more flags to this masks that are exclusive to players
Class npc_cairne_bloodhoof
verify abilities/timers
Member npc_commandscript::HandleNpcAddWeaponCommand (ChatHandler *handler, uint32 SlotID, ItemTemplate const *tmpItem)
NpcCommands that need to be fixed :
Class npc_daegarn
make prisoners help (unclear if summoned or using npc's from surrounding cages (summon inside small cages?))
Member npc_death_knight_initiate::npc_death_knight_initiateAI::UpdateAI (uint32 uiDiff) override
spells
Member npc_dkc1_gothik::npc_dkc1_gothikAI::MoveInLineOfSight (Unit *who) override
Creatures must not be removed, but, must instead
Member npc_earthmender_wilda::npc_earthmender_wildaAI::UpdateAI (uint32 uiDiff) override
add more abilities
Class npc_frenzied_bloodseeker_bat
: Intro sequence with movement
Class npc_grimstone
implement quest part of event (different end boss)
Member npc_grimstone::npc_grimstoneAI::SummonRingBoss ()
move them to center
Member npc_grimstone::npc_grimstoneAI::SummonRingMob ()
move them to center
Member npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI::Initialize ()
Timers!
Member npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI::UpdateAI (uint32 diff) override
: needs some improvements
Class npc_kerlonian
make concept similar as "ringo" -escort. Find a way to run the scripted attacks, if player are choosing road.
Member npc_lorekeeper::npc_lorekeeperAI::OnGossipSelect (Player *player, uint32 menuId, uint32 gossipListId) override
delorah->AI()->Talk(xxxx, brann->GetGUID()); when reached at branz
Member npc_medivh_bm::UpdateAI (uint32 diff) override
start the post-event here
Member npc_prince_taldaram_flame_sphere::UpdateAI (uint32 diff) override

: correct speed

: find correct values

Member npc_thrall_old_hillsbrad::JustSummoned (Creature *summoned) override
make Scarloc start into event instead, and not start attack directly
Member npc_thrall_old_hillsbrad::UpdateAI (uint32 diff) override
add his abilities'n-crap here
Class npc_thrall_warchief
verify abilities/timers
Member npc_verdisa_beglaristrasz_eternos::StoreEssence (Player *player, uint32 itemId)
: implement with spells
Member npc_weegli_blastfuse::npc_weegli_blastfuseAI::MovementInform (uint32, uint32) override
leave the area...
Member NUM_WEAKNESS
This number is completly random!
Member Object::BuildMovementUpdate (ByteBuffer *data, uint16 flags) const
Research the proper formula
Member ObjectGridUnloader::Visit (GridRefManager< T > &m)
Check if that script has the correct logic. Do we really need to summons something before deleting?
Class ObjectWorldLoader
to implement npc on transport, also need to load npcs at grid loading
Member OutdoorPvPNASpells
"sometimes" set to neutral
Member OutdoorPvPSI::HandleAreaTrigger (Player *player, uint32 trigger) override

: confirm this text

: confirm this text

Class OutdoorPvPZM
flag carrier death/leave/mount/activitychange should give back the gossip options
Member PathGenerator::BuildPointPath (float const *startPoint, float const *endPoint)
check the exact cases
Member PathGenerator::BuildPolyPath (G3D::Vector3 const &startPos, G3D::Vector3 const &endPos)

play with the values here

we can merge it with getPathPolyByPosition() loop

Member Pet::LoadPetFromDB (Player *owner, uint32 petEntry, uint32 petnumber, bool current)
pets should be summoned from real cast instead of just faking it?
Member Player::AddItem (uint32 itemId, uint32 count)
Send to mailbox if no space
Member Player::AddSpell (uint32 spellId, bool active, bool learning, bool dependent, bool disabled, bool loading=false, uint32 fromSkill=0)
: confirm if rogues start with lockpicking skill at level 1 but only receive the spell to use it at level 16
Member Player::CanUninviteFromGroup (ObjectGuid guidMember=ObjectGuid::Empty) const
Should also be sent when anyone has recently left combat, with an aprox ~5 seconds timer.
Member Player::CanUseItem (Item *pItem, bool not_loading=true) const
when you right-click already equipped item it throws EQUIP_ERR_PROFICIENCY_NEEDED.
Member Player::Create (ObjectGuid::LowType guidlow, CharacterCreateInfo *createInfo)
need more checks against packet modifications
Member Player::duel
: maybe move UpdateDuelFlag+DuelComplete to independent DuelHandler
Member Player::GetDodgeFromAgility (float &diminishing, float &nondiminishing) const
research if talents/effects that increase total agility by x% should increase non-diminishing part
Member Player::GiveLevel (uint8 level)

find some better solution

Poor design of mail system

Member Player::HandleDrowning (uint32 time_diff)

Check this formula

Check this formula

Member Player::RewardQuest (Quest const *quest, uint32 reward, Object *questGiver, bool announce=true)
Poor design of mail system
Member Player::SaveToDB (CharacterDatabaseTransaction trans, bool create=false)
: Filter out more redundant fields that can take their default value at player create
Member Player::SendInitialPacketsBeforeAddToMap ()
Member Player::SendPreparedQuest (ObjectGuid guid)
verify if check for !quest->IsDaily() is really correct (possibly not)
Member Player::Update (uint32 time) override
add weapon, skill check
Member Player::UpdatePowerRegen (Powers power)
possible use of miscvalueb instead of amount
Member Player::UpdatePvPState (bool onlyFFA=false)
should we always synchronize UNIT_FIELD_BYTES_2, 1 of controller and controlled?
Member PlayerDumpWriter::GetDump (ObjectGuid::LowType guid, std::string &dump)

Add instance/group..

Add a dump level option to skip some non-important tables

Member Puppet::Update (uint32 time) override
why long distance .die does not remove it
Member RoomRadius
Visci isn't in room middle
Member SAY_OUTRO_ALLIANCE_2
ALLIANCE OUTRO
Member ScriptMgr::CreateBattleground (BattlegroundTypeId typeId)
Implement script-side battlegrounds.
Member send_commandscript::HandleSendMailCommand (ChatHandler *handler, char const *args)
Fix poor design
Member SmartAI::WaypointPathEnded (uint32 nodeId, uint32 pathId) override
move escort related logic
Member Spell::AddUnitTarget (Unit *target, uint32 effectMask, bool checkIfValid=true, bool implicit=true, Position const *losPosition=nullptr)
this is a hack
Member Spell::CheckCast (bool strict, uint32 *param1=nullptr, uint32 *param2=nullptr)
determine if there is some flag to enable/disable the check
Member Spell::CheckEffectTarget (Unit const *target, SpellEffectInfo const &spellEffectInfo, Position const *losPosition) const
shit below shouldn't be here, but it's temporary
Member Spell::CheckItems (uint32 *param1, uint32 *param2) const
Needs review
Member Spell::DoTriggersOnSpellHit (Unit *unit, uint8 effMask)
remove/cleanup this, as this table is not documented and people are doing stupid things with it
Member Spell::EffectCreateItem2 ()
ExecuteLogEffectCreateItem(effectInfo->EffectIndex, effectInfo->ItemType);
Member Spell::EffectCreateRandomItem ()
ExecuteLogEffectCreateItem(effectInfo->EffectIndex, effectInfo->ItemType);
Member Spell::EffectEnergize ()
: move this to scripts
Member Spell::EffectFeedPet ()
fix crash when a spell has two effects, both pointed at the same item target
Member Spell::EffectHeal ()
: move this to scripts
Member Spell::EffectInterruptCast ()
not all spells that used this effect apply cooldown at school spells
Member Spell::EffectOpenLock ()
Add script for spell 41920 - Filling, becouse server it freze when use this spell
Member Spell::EffectPowerBurn ()
: move this to scripts
Member Spell::EffectPull ()
create a proper pull towards distract spell center for distract
Member Spell::EffectSchoolDMG ()
should this be put on taken but not done?
Member Spell::EffectScriptEffect ()

a hack, range = 11, should after some time cast, otherwise too far

: move this to scripts

we must implement hunter pet summon at login there (spell 6962)

Member Spell::EffectSendEvent ()
there should be a possibility to pass dest target to event script
Member Spell::EffectTriggerSpell ()
move those to spell scripts
Member Spell::IsAutoActionResetSpell () const
changed SPELL_INTERRUPT_FLAG_AUTOATTACK -> SPELL_INTERRUPT_FLAG_INTERRUPT to fix compile - is this check correct at all?
Member Spell::SelectImplicitCasterDestTargets (SpellEffectInfo const &spellEffectInfo, SpellImplicitTargetInfo const &targetType)
fix this check
Member Spell::SendLoot (ObjectGuid guid, LootType loottype)
possible must be moved to loot release (in different from linked triggering)
Member Spell::SendSpellGo ()
There is a crash caused by a spell with CAST_FLAG_RUNE_LIST cast by a creature
Member spell_dk_anti_magic_shell_raid::CalculateAmount (AuraEffect const *, int32 &amount, bool &)
this should absorb limited amount of damage, but no info on calculation formula
Member SPELL_FREEZE_ANIM_STUN
: make use of this spell...
Class spell_gen_despawn_self
: migrate spells to spell_gen_despawn_target, then remove this
Member spell_gen_restoration::PeriodicTick (AuraEffect const *)
: should proc other auras?
Member spell_gen_vehicle_scaling::CalculateAmount (AuraEffect const *, int32 &amount, bool &)

Research possibility of scaling down

Reserach coeffs for different vehicles

Member spell_hungarfen_putrid_mushroom_primer::FilterTargets (std::list< WorldObject * > &targets)
: Check if something else should be done here
Member spell_intense_cold::HandlePeriodicTick (AuraEffect const *aurEff)
the caster should be boss but not the player
Member SPELL_LIGHTS_FAVOR
Cast every 3 seconds during Frostmourne phase, targets a Wicked Spirit amd activates it
Class spell_mage_polymorph_cast_visual
move out of here and rename - not a mage spell
Member spell_murmur_sonic_boom_effect::CalcDamage ()
: find correct value
Member spell_pal_light_s_beacon::HandleProc (AuraEffect const *aurEff, ProcEventInfo &eventInfo)
: caster must be the healed unit to perform distance checks correctly but that will break animation on clientside caster in spell packets must be the healing unit
Member spell_q12589_shoot_rjr::HandleDummy (SpellEffIndex)
Make crunchy perform emote eat when he reaches the bird
Member spell_thorim_blizzard_effect::spell_thorim_blizzard_effect_AuraScript::CheckAreaTarget (Unit *target)
: fix this for all dynobj auras
Member SPELLFAMILYFLAG_SHAMAN_TOTEM_EFFECTS
Figure out a more accurate name for the following familyflag(s)
Member SpellInfo::CheckShapeshift (uint32 form) const
Find a way to disable use of these spells clientside
Member SpellMgr::LoadEnchantCustomAttr ()
find a better check
Member SpellMgr::LoadSpellInfoCorrections ()
: remove this when basepoints of all Ride Vehicle auras are calculated correctly
Class SpellTargetSelector
Add more checks from Spell::CheckCast
Member SwarmerPos
These below are probably incorrect, taken from SD2
Member TEXT_ALLIANCE_WINS
: sound is missing
Member TEXT_STORMPIKE_GENERAL_DEAD
: sound is missing
Member trollmodel []
generalize these models with race from dbc
Member TurretAI::CanAIAttack (Unit const *who) const override
use one function to replace it
Member Unit::CalculateMeleeDamage (Unit *victim, CalcDamageInfo *damageInfo, WeaponAttackType attackType=BASE_ATTACK)
for melee need create structure as in
Member Unit::DealDamage (Unit *attacker, Unit *victim, uint32 damage, CleanDamage const *cleanDamage=nullptr, DamageEffectType damagetype=DIRECT_DAMAGE, SpellSchoolMask damageSchoolMask=SPELL_SCHOOL_MASK_NORMAL, SpellInfo const *spellProto=nullptr, bool durabilityLoss=true)
check packets if damage is done by victim, or by attacker of victim
Member Unit::DealMeleeDamage (CalcDamageInfo *damageInfo, bool durabilityLoss)
Move this to a packet handler
Member Unit::IsMagnet () const
: find a more generic solution
Member Unit::Kill (Unit *attacker, Unit *victim, bool durabilityLoss=true)
do instance binding anyway if the charmer/owner is offline
Member Unit::RemoveAllGroupBuffsFromCaster (ObjectGuid casterGUID)
: once we support variadic templates use them here
Member Unit::RemoveCharmedBy (Unit *charmer)
Handle SLOT_IDLE motion resume
Member Unit::SetCharm (Unit *target, bool apply)
maybe we can use this flag to check if controlled by player
Member Unit::SetFacingToObject (WorldObject const *object, bool force=true)
figure out under what conditions creature will move towards object instead of facing it where it currently is.
Member Unit::SpellCriticalDamageBonus (Unit const *caster, SpellInfo const *spellProto, uint32 damage, Unit *victim)
write here full calculation for melee/ranged spells
Member Unit::SpellCriticalHealingBonus (Unit const *caster, SpellInfo const *spellProto, uint32 damage, Unit *victim)
write here full calculation for melee/ranged spells
Member Unit::UpdateSpeed (UnitMoveType mtype)
possible affect only on MOVE_RUN
Member VMAP::TileAssembler::convertWorld2 ()
remove extractor hack and uncomment below line:
Member WardenWin::HandleCheckResult (ByteBuffer &buff) override
test it.
Member World::getAllowMovement () const
Actions on m_allowMovement still to be implemented Is movement allowed?
Member World::LoadConfigSettings (bool reload=false)
Add MonsterSight (with meaning) in worldserver.conf or put them as define
Member World::SetInitialWorldSettings ()
Get rid of magic numbers
Member World::~World ()
free addSessQueue
Member WorldObject::DestroyForNearbyPlayers ()
this is for puppet
Member WorldObject::GetMagicHitRedirectTarget (Unit *victim, SpellInfo const *spellInfo)
handle this charge drop by proc in cast phase on explicit target
Member WorldObject::SpellHitResult (Unit *victim, SpellInfo const *spellInfo, bool canReflect=false) const
client not show miss log for this spells - so need find info for this in dbc and use it!
Member WorldSession::HandleCharCreateOpcode (WorldPacket &recvPacket)

check if cinematic already shown? (already logged in?; cinematic field)

what to if account already has characters of both races?

Member WorldSession::HandleMovementOpcodes (WorldPacket &recvPacket)
discard movement packets after the player is rooted
Member WorldSession::HandlePetAction (WorldPacket &recvData)
allow control charmed player?
Member WorldSession::HandlePetActionHelper (Unit *pet, ObjectGuid guid1, uint32 spellid, uint16 flag, ObjectGuid guid2)
: confirm this check
Member WorldSession::HandlePetitionBuyOpcode (WorldPacket &recvData)
find correct opcode
Member WorldSession::HandleSpellClick (WorldPacket &recvData)
Unit::SetCharmedBy: 28782 is not in world but 0 is trying to charm it! -> crash
Member WorldSession::HandleUseItemOpcode (WorldPacket &recvPacket)
add targets.read() check
Member Yells
rewrite Armageddon