I've seen it done on WoWMolly, and I'd like to do it. Basically it was an instant cast hypogryph, or w/e, and you could use it anywhere. Any ideas?
Printable View
I've seen it done on WoWMolly, and I'd like to do it. Basically it was an instant cast hypogryph, or w/e, and you could use it anywhere. Any ideas?
My friend got it to work. He modified something in the core file to get flying mounts working everywhere, also there was a gm command that you could use forgot what it was. O btw this is for mangos if u want the mod file ill see if i can get it. He still not done with it
By Sinister~
That Charm Doesn't Work Exactly Like ThatQuote:
Updated - 100% Works with all Ascent/NCDB revisions - even 2400+
I've decided to make a single guide/thread for this, since it is in such high demand. All the rumored bugs are easy to work around, and is quite worth the cool feature this add to your gaming server!
The best idea.. if you plan to add this to your server. Is to do what we did, and make them rare items. Most the rumored bugs that come with flying mounts in Azeroth are, flying to high, and ending up in a different town or area. Flying over major mobs to get to larger loot mobs/bosses (useless on highrate servers, since all good loot is in outlands). Using them in instances... which can be worked around by making the item cast a normal mount spell. Lagging the server is not true, this mostly clientside, which does not work the server much harder at all, but could cause low end computer players to lag. Em, other than that, they are pretty cool.
Also, for latest Ascent revisions, there was a couple changes to make it work right. Here's another guide, just for that.
Quote:
You will have to modify the following files: Player.cpp, SpellAuras.cpp & Unit.cpp
In Player.cpp you will need to search and replace 3 items
First search for:
!=530
and replace it with
>580
then search for:
!= 530
(yes, just add a space) and replace it with
> 580
All 3 will look something like
Code:
if(flying_aura && MapID > 580)
In SpellAuras.cpp you will need to search for
Aura::SpellAuraEnableFlight(bool apply)
Replace the "else" with "if(!apply)" which should look like this:
Code:
void Aura::SpellAuraEnableFlight(bool apply){if(m_target->IsPlayer()){static_cast<Player*>(m_target)->FlyCheat = apply;static_cast<Player*>(m_target)->flying_aura = m_spellProto->Id;}if(apply){m_target->EnableFlight(true);m_target->m_flyspeedModifier += mod->m_amount;m_target->UpdateSpeed(true);}if (!apply) //replaced else with: if(!apply) to allow flying mounts in the old lands{m_target->DisableFlight(true);m_target->m_flyspeedModifier -= mod->m_amount;m_target->UpdateSpeed(true);}}
Now for the last. In Unit.cpp:
Find and replace:
if(m_mapId != 530)
with
if(m_mapId > 580)
Code:
if(m_mapId != 530) //Change this to > 580{for(uint32 i = 0; i < -1; ++i){ Can't use flying auras in non-outlands.if(aur->GetSpellProto()->EffectApplyAuraName[i] == 208 || aur->GetSpellProto()->EffectApplyAuraName[i] == 207){delete aur;return;}}}
Now Compile, and once it is finished, create an item that will cast the mount you desire on equip. The current items will not work with this change (they still work in the Outlands as normal) so you will have to create some new items for it to work.
Such as:
Charm of the Phoenix - Trinket, Summons "Peep the Phoenix" when equip.
Code:
INSERT INTO items VALUES (90001, 4, 0, -1, "Charm of the Phoenix", "Charm of the Phoenix", "Charm of the Phoenix", "Charm of the Phoenix", 43430, 3, 0, 0, 0, 12, -1, -1, 128, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40192, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, "", 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 0);
Please Leave Comments and a Thank You!
PS: I will update later and add custom mounts items that will not work in instances/indoors for you guys.
INSERT INTO items VALUES (90001, 4, 0, -1, "Charm of the Phoenix", "Charm of the Phoenix", "Charm of the Phoenix", "Charm of the Phoenix", 43430, 3, 0, 0, 0, 12, -1, -1, 128, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40192, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, "", 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 0);
Here is The Working One.(Removed 2 Digits) And This Guide Works I Use It On All My Compiles And I Am Using 4408