Jump to content

Xees

Members
  • Posts

    18
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Xees's Achievements

Member

Member (2/3)

0

Reputation

  1. yes , when i do a .account it sayas i am level 3 while in the database i setup the level to 5.
  2. Linux is easier to hack then Windows Server 2008
  3. Xees

    unaura

    lmao , Please Help me Script To UnAura a Character ?
  4. is there any high performance Tips for Windows server 2008 , My Machine for Both Core And MySQL in same machine Xeon 16 gig ram 100 mb symmetric internet HDD SAS 500 GB Bandwidth 50 GB im getting new Machine with same specs for MySQL soon so it becomes 1 machine for Core and 1 machine for MySQL
  5. for example ; i want to disable gms and developers adding items to players i change the command level in the world database to level 4 so everyone under level 4 will not be able to use it. and that works perfectly. but when i set my own account to level 4 or 5 , i still cannot use the command and i should be able to because my level is 4 or 5 can anyone help me with this stupid issue please? i looked around a lot , i modified the core a lot , but i cant seem to get it to work . now i have a fresh clean core and i want to know how to do this , so i can setup everything correctly
  6. Hello man , Can you help me with this issue, i have developers and gamemasters and head gamemasters and super game masters and so on , i created enum AccountTypes { SEC_PLAYER = 0, SEC_MODERATOR = 1, SEC_GM = 2, SEC_HEADGM = 3, SEC_DEV = 4, SEC_HEADDEV = 5, SEC_ADMINISTRATOR = 6, SEC_CONSOLE = 7 // must be always last in list, accounts must have less security level always also }; When i go to the database and setup command level usage like command to restart server for only level 6 it does not get activated , what is the issue with this . you said all your levels work and if you put command additem = 4 And Head GM = 4 only people with level 4 and above
  7. why wasnt this implanted already in the core , its very good . making a gameobject despawn or activate on the event that a certin mob in the instance has been killed. like a door or something. very nice man
  8. its extremely annoying to find a player flaying around like an idoit just to get experince from running around. why does wow emu hacker works on emulator servers while it doesnt affect blizzard servers at all. is this fixable with c++ , to Prevent The Work of WoW Emu Hacker Completly , not some workaround that prevents teleportation by disconnection and stuff like that . i don't know much c++ , so forgive me for this stupid question
  9. you have been a memeber since 2007 LOLZ
  10. i Found a lot of patches on http://www.wowresource.eu translated them to english and here they are . [Patch] Adding support for Gossip Dual Talent Spec SQL: REPLACE INTO gossip_menu_option ( menu_id `` , `` id , `option_icon` , `` option_text , option_id `` , `` npc_option_npcflag , action_menu_id `` , `` action_poi_id , action_script_id `` , `` box_coded , box_money `` , `` box_text , cond_1 `` , `` cond_1_val_1 , cond_1_val_2 `` , ` cond_2 ` , `` cond_2_val_1 , cond_2_val_2 `` , `` cond_3 , cond_3_val_1 `` , `` cond_3_val_2 ) VALUES ( 0, 16, 0, 'Purchase and Dual Specialization Talent.' , 18, 16, 0, 0, 0, 0, 10000000, 'Are you sure you Wish to purchase a Dual Specialization Talent? " , 0, 0, 0, 0, 0, 0, 0, 0, 0); REPLACE INTO `achievement_criteria_requirement` ( criteria_id `` ,`type` ,, `value1` ) VALUES ( '9619 ' ,'0 ' ,'63624 ' ); Patch : diff - git a / src / game / GossipDef .hb / src / game / GossipDef .h index e3a3c9b ..fdfe83e 100644 --- a / src / game / GossipDef .h + + + b / src / game / GossipDef .h @ @ - 48,6 + 48,7 @ @ enum Gossip_Option GOSSIP_OPTION_ARMORER = 15, / / UNIT_NPC_FLAG_ARMORER (4096) GOSSIP_OPTION_UNLEARNTALENTS = 16, / / UNIT_NPC_FLAG_TRAINER (16) (bonus option for GOSSIP_OPTION_TRAINER) GOSSIP_OPTION_UNLEARNPETSKILLS = 17, / / UNIT_NPC_FLAG_TRAINER (16) (bonus option for GOSSIP_OPTION_TRAINER) + GOSSIP_OPTION_LEARNDUALSPEC = 18, / / UNIT_NPC_FLAG_TRAINER (bonus option for GOSSIP_OPTION_TRAINER) GOSSIP_OPTION_MAX ) diff - git a / src / Game / Player .cpp b / src / Game / Player .cpp index e3a3c9b ..fdfe83e 100644 --- a / src / Game / Player .cpp + + + b / src / Game / Player .cpp @ @ - 12652,6 + 12652,10 @ @ void Player ::PrepareGossipMenu ( WorldObject * pSource ,uint32 menuId ) if (! pCreature -> isCanTrainingOf ( this , false )) bCanTalk = false ; break ; + case GOSSIP_OPTION_LEARNDUALSPEC : + if (! ( GetSpecsCount () == 1 & & pCreature -> isCanTrainingAndResetTalentsOf ( this ) & & ! ( getLevel () < 40))) / / Level added manually, in original patch it was in config! + bCanTalk = false ; + break ; case GOSSIP_OPTION_UNLEARNTALENTS : if (! pCreature -> isCanTrainingAndResetTalentsOf ( this )) bCanTalk = false , @ @ - 12851,6 + 12855,29 @ @ void Player ::OnGossipSelect ( WorldObject * pSource ,gossipListId uint32 ,uint32 my case GOSSIP_OPTION_TRAINER : GetSession () -> SendTrainerList ( GUID ) break ; + case GOSSIP_OPTION_LEARNDUALSPEC : + if ( GetSpecsCount () == 1 & & ! ( getLevel () < 40)) : / / Level manually added, in an original patch it was in config! + ( + if ( GetMoney () < 10000000) : / / Sam: it was in config, 1000g default, change it if you want + ( + SendBuyError ( BUY_ERR_NOT_ENOUGHT_MONEY , 0, 0, 0) + PlayerTalkClass -> CloseGossip () + break ; + ) + else + ( + ModifyMoney (- 10000000) / / Sam: here too + + / / Cast spells That Teach dual spec + / / Both are ImplicitTarget Also self and Must Be part of the player + CastSpell ( this ,63680,true ,NULL ,NULL ,GetGUID ()) + CastSpell ( this ,63624,true ,NULL ,NULL ,GetGUID ()) + + / / Should show Gossip Another text with "Congratulations ..." + PlayerTalkClass -> CloseGossip () + ) + ) + break ; case GOSSIP_OPTION_UNLEARNTALENTS : PlayerTalkClass -> CloseGossip (); SendTalentWipeConfirm ( GUID ); [PATCH]: Add config option to enable / disable character by establishing specific characteristics Patch : diff --git a/CharacterHandler.cpp b/CharacterHandler.cpp index ae7e3f1..2e5de34 100644 --- a/CharacterHandler.cpp +++ b/CharacterHandler.cpp @@ -319,6 +319,7 @@ void WorldSession::HandleCharCreateOpcode( WorldPacket & recv_data ) // speedup check for heroic class disabled case uint32 heroic_free_slots = sWorld.getConfig(CONFIG_UINT32_HEROIC_CHARACTERS_PER_REALM); + if(heroic_free_slots == 0 && GetSecurity() == SEC_PLAYER && class_ == CLASS_DEATH_KNIGHT) { data << (uint8)CHAR_CREATE_UNIQUE_CLASS_LIMIT; @@ -326,6 +327,144 @@ void WorldSession::HandleCharCreateOpcode( WorldPacket & recv_data ) return; } +//=========================================// +///Character Create Disable PATCH by DLxko/// +//=========================================// + +//First we need get this from config =D for all races /classes +uint32 warrior = sWorld.getConfig(CONFIG_UINT32_WARRIOR_ENABLE); +uint32 paladin = sWorld.getConfig(CONFIG_UINT32_PALADIN_ENABLE); +uint32 hunter = sWorld.getConfig(CONFIG_UINT32_HUNTER_ENABLE); +uint32 rogue = sWorld.getConfig(CONFIG_UINT32_ROGUE_ENABLE); +uint32 priest = sWorld.getConfig(CONFIG_UINT32_PRIEST_ENABLE); +uint32 shaman = sWorld.getConfig(CONFIG_UINT32_SHAMAN_ENABLE); +uint32 mage = sWorld.getConfig(CONFIG_UINT32_MAGE_ENABLE); +uint32 warlock = sWorld.getConfig(CONFIG_UINT32_WARLOCK_ENABLE); + + +uint32 dwarf = sWorld.getConfig(CONFIG_UINT32_DWARF_ENABLE); +uint32 gnome = sWorld.getConfig(CONFIG_UINT32_GNOME_ENABLE); +uint32 human = sWorld.getConfig(CONFIG_UINT32_HUMAN_ENABLE); +uint32 nightelf = sWorld.getConfig(CONFIG_UINT32_NIGHTELF_ENABLE); +uint32 orc = sWorld.getConfig(CONFIG_UINT32_ORC_ENABLE); +uint32 tauren = sWorld.getConfig(CONFIG_UINT32_TAUREN_ENABLE); +uint32 troll = sWorld.getConfig(CONFIG_UINT32_TROLL_ENABLE); +uint32 undead = sWorld.getConfig(CONFIG_UINT32_UNDEAD_ENABLE); +uint32 bloodelf = sWorld.getConfig(CONFIG_UINT32_BLOODELF_ENABLE); +uint32 draenei = sWorld.getConfig(CONFIG_UINT32_DRAENEI_ENABLE); + +//If disabled class return error +if(warrior == 0 && class_ == CLASS_WARRIOR) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(paladin == 0 && class_ == CLASS_PALADIN) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(hunter == 0 && class_ == CLASS_HUNTER) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(rogue == 0 && class_ == CLASS_ROGUE) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(priest == 0 && class_ == CLASS_PRIEST) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(shaman == 0 && class_ == CLASS_SHAMAN) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(mage == 0 && class_ == CLASS_MAGE) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(warlock == 0 && class_ == CLASS_WARLOCK) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } + + +if(dwarf == 0 && race_ == RACE_DWARF) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(gnome == 0 && race_ == RACE_GNOME) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(human == 0 && race_ == RACE_HUMAN) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(nightelf == 0 && race_ == RACE_NIGHTELF) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(orc == 0 && race_ == RACE_ORC) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(tauren == 0 && race_ == RACE_TAUREN) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(troll == 0 && race_ == RACE_TROLL) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(undead == 0 && race_ == RACE_UNDEAD_PLAYER) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(bloodelf == 0 && race_ == RACE_BLOODELF) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } +if(draenei == 0 && race_ == RACE_DRAENEI) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } + // speedup check for heroic class disabled case uint32 req_level_for_heroic = sWorld.getConfig(CONFIG_UINT32_MIN_LEVEL_FOR_HEROIC_CHARACTER_CREATING); if(GetSecurity() == SEC_PLAYER && class_ == CLASS_DEATH_KNIGHT && req_level_for_heroic > sWorld.getConfig(CONFIG_UINT32_MAX_PLAYER_LEVEL)) diff --git a/World.cpp b/World.cpp index 6bf621c..cc3d29a 100644 --- a/World.cpp +++ b/World.cpp @@ -570,6 +570,28 @@ void World::LoadConfigSettings(bool reload) setConfigMinMax(CONFIG_UINT32_HEROIC_CHARACTERS_PER_REALM, "HeroicCharactersPerRealm", 1, 1, 10); + setConfig(CONFIG_UINT32_WARRIOR_ENABLE, "Warrior.Character.Enable", 0); + setConfig(CONFIG_UINT32_PALADIN_ENABLE, "Paladin.Character.Enable", 0); + setConfig(CONFIG_UINT32_HUNTER_ENABLE, "Hunter.Character.Enable", 0); + setConfig(CONFIG_UINT32_ROGUE_ENABLE, "Rogue.Character.Enable", 0); + setConfig(CONFIG_UINT32_PRIEST_ENABLE, "Priest.Character.Enable", 0); + setConfig(CONFIG_UINT32_SHAMAN_ENABLE, "Shaman.Character.Enable", 0); + setConfig(CONFIG_UINT32_MAGE_ENABLE, "Mage.Character.Enable", 0); + setConfig(CONFIG_UINT32_WARLOCK_ENABLE, "Warlock.Character.Enable", 0); + + setConfig(CONFIG_UINT32_DWARF_ENABLE, "Dwarf.Character.Enable", 0); + setConfig(CONFIG_UINT32_GNOME_ENABLE, "Gnome.Character.Enable", 0); + setConfig(CONFIG_UINT32_HUMAN_ENABLE, "Human.Character.Enable", 0); + setConfig(CONFIG_UINT32_NIGHTELF_ENABLE, "NightElf.Character.Enable", 0); + setConfig(CONFIG_UINT32_ORC_ENABLE, "Orc.Character.Enable", 0); + setConfig(CONFIG_UINT32_TAUREN_ENABLE, "Tauren.Character.Enable", 0); + setConfig(CONFIG_UINT32_TROLL_ENABLE, "Troll.Character.Enable", 0); + setConfig(CONFIG_UINT32_UNDEAD_ENABLE, "Undead.Character.Enable", 0); + setConfig(CONFIG_UINT32_BLOODELF_ENABLE, "BloodElf.Character.Enable", 0); + setConfig(CONFIG_UINT32_DRAENEI_ENABLE, "Draenei.Character.Enable", 0); + + + setConfig(CONFIG_UINT32_MIN_LEVEL_FOR_HEROIC_CHARACTER_CREATING, "MinLevelForHeroicCharacterCreating", 55); setConfigMinMax(CONFIG_UINT32_SKIP_CINEMATICS, "SkipCinematics", 0, 0, 2); diff --git a/World.h b/World.h index a4e4f6f..4eb28eb 100644 --- a/World.h +++ b/World.h @@ -177,7 +177,25 @@ enum eConfigUInt32Values CONFIG_UINT32_TIMERBAR_FIRE_GMLEVEL, CONFIG_UINT32_TIMERBAR_FIRE_MAX, CONFIG_UINT32_MIN_LEVEL_STAT_SAVE, - CONFIG_UINT32_VALUE_COUNT + CONFIG_UINT32_VALUE_COUNT, + CONFIG_UINT32_WARRIOR_ENABLE, + CONFIG_UINT32_PALADIN_ENABLE, + CONFIG_UINT32_HUNTER_ENABLE, + CONFIG_UINT32_ROGUE_ENABLE, + CONFIG_UINT32_PRIEST_ENABLE, + CONFIG_UINT32_SHAMAN_ENABLE, + CONFIG_UINT32_MAGE_ENABLE, + CONFIG_UINT32_WARLOCK_ENABLE, + CONFIG_UINT32_DWARF_ENABLE, + CONFIG_UINT32_GNOME_ENABLE, + CONFIG_UINT32_HUMAN_ENABLE, + CONFIG_UINT32_NIGHTELF_ENABLE, + CONFIG_UINT32_ORC_ENABLE, + CONFIG_UINT32_TAUREN_ENABLE, + CONFIG_UINT32_TROLL_ENABLE, + CONFIG_UINT32_UNDEAD_ENABLE, + CONFIG_UINT32_BLOODELF_ENABLE, + CONFIG_UINT32_DRAENEI_ENABLE }; /// Configuration elements diff --git a/mangosd.conf.dist.in b/mangosd.conf.dist.in index 5d4053f..2adef11 100644 --- a/mangosd.conf.dist.in +++ b/mangosd.conf.dist.in @@ -1451,3 +1451,39 @@ SOAP.Enabled = 0 SOAP.IP = 127.0.0.1 SOAP.Port = 7878 +################################################################################################################### +# NEW CHARACTER CREATE +# +# *RACE*.Character.enable +# (A: Human, Dwarf, Gnome, Night Elf, Draenei / H: Orc, Troll, Undead, Tauren, Blood Elf) +# 0 - disable (blocked) +# Default: 1 - enable (enabled) +# +# *CLASS*.Character.enable +# (Warrior, Paladin, Death Knight, Shaman, Hunter, Druid, Rogue, Priest, Mage, Warlock) +# 0 - disable (blocked) +# Default: 1 - enable (enabled) +# +################################################################################################################### + +Human.Character.enable = 1 +Dwarf.Character.enable = 1 +Gnome.Character.enable = 1 +NightElf.Character.enable = 1 +Draenei.Character.enable = 1 +Orc.Character.enable = 1 +Troll.Character.enable = 1 +Undead.Character.enable = 1 +Tauren.Character.enable = 1 +BloodElf.Character.enable = 1 + +Warrior.Character.enable = 1 +Paladin.Character.enable = 1 +DeathKnight.Character.enable = 1 +Shaman.Character.enable = 1 +Hunter.Character.enable = 1 +Druid.Character.enable = 1 +Rogue.Character.enable = 1 +Priest.Character.enable = 1 +Mage.Character.enable = 1 +Warlock.Character.enable = 1 Patch : Added support for DeathKnight diff --git a/src/game/CharacterHandler.cpp b/src/game/CharacterHandler.cpp index 68754d8..f5acf06 100644 --- a/src/game/CharacterHandler.cpp +++ b/src/game/CharacterHandler.cpp @@ -340,7 +340,7 @@ uint32 priest = sWorld.getConfig(CONFIG_UINT32_PRIEST_ENABLE); uint32 shaman = sWorld.getConfig(CONFIG_UINT32_SHAMAN_ENABLE); uint32 mage = sWorld.getConfig(CONFIG_UINT32_MAGE_ENABLE); uint32 warlock = sWorld.getConfig(CONFIG_UINT32_WARLOCK_ENABLE); - +uint32 deathknight = sWorld.getConfig(CONFIG_UINT32_DEATH_KNIGHT_ENABLE); uint32 dwarf = sWorld.getConfig(CONFIG_UINT32_DWARF_ENABLE); uint32 gnome = sWorld.getConfig(CONFIG_UINT32_GNOME_ENABLE); @@ -402,7 +402,12 @@ if(warlock == 0 && class_ == CLASS_WARLOCK) SendPacket( &data ); return; } - +if(deathknight == 0 && class_ == CLASS_DEATH_KNIGHT) + { + data << (uint8)CHAR_CREATE_DISABLED; + SendPacket( &data ); + return; + } if(dwarf == 0 && race_ == RACE_DWARF) { diff --git a/src/game/World.cpp b/src/game/World.cpp index 05e6b9e..0f8ef0f 100644 --- a/src/game/World.cpp +++ b/src/game/World.cpp @@ -579,6 +579,7 @@ void World::LoadConfigSettings(bool reload) setConfig(CONFIG_UINT32_SHAMAN_ENABLE, "Shaman.Character.Enable", 0); setConfig(CONFIG_UINT32_MAGE_ENABLE, "Mage.Character.Enable", 0); setConfig(CONFIG_UINT32_WARLOCK_ENABLE, "Warlock.Character.Enable", 0); + setConfig(CONFIG_UINT32_DEATH_KNIGHT_ENABLE, "DeathKnightCharacter.Enable", 0); setConfig(CONFIG_UINT32_DWARF_ENABLE, "Dwarf.Character.Enable", 0); setConfig(CONFIG_UINT32_GNOME_ENABLE, "Gnome.Character.Enable", 0); diff --git a/src/game/World.h b/src/game/World.h index 6ea9a18..1d774ac 100644 --- a/src/game/World.h +++ b/src/game/World.h @@ -187,6 +187,7 @@ enum eConfigUInt32Values CONFIG_UINT32_SHAMAN_ENABLE, CONFIG_UINT32_MAGE_ENABLE, CONFIG_UINT32_WARLOCK_ENABLE, + CONFIG_UINT32_DEATH_KNIGHT_ENABLE, CONFIG_UINT32_DWARF_ENABLE, CONFIG_UINT32_GNOME_ENABLE, CONFIG_UINT32_HUMAN_ENABLE, -- 1.7.0.2 Player Looting Dead Player diff --git a/src/game/LootHandler.cpp b/src/game/LootHandler.cpp index 9731442..38d780d 100644 --- a/src/game/LootHandler.cpp +++ b/src/game/LootHandler.cpp @@ -29,6 +29,7 @@ #include "Group.h" #include "World.h" #include "Util.h" +#include "ObjectAccessor.h" void WorldSession::HandleAutostoreLootItemOpcode( WorldPacket & recv_data ) { @@ -68,6 +69,16 @@ void WorldSession::HandleAutostoreLootItemOpcode( WorldPacket & recv_data ) loot = &pItem->loot; } + else if (IS_CORPSE_GUID(lguid)) + { + Corpse *bones = ObjectAccessor::GetCorpse(*player, lguid); + if (!bones) + { + player->SendLootRelease(lguid); + return; + } + loot = &bones->loot; + } else { Creature* pCreature = diff --git a/src/game/Player.cpp b/src/game/Player.cpp index ed23d9c..b88c33d 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -3764,8 +3764,7 @@ void Player::CreateCorpse() flags |= CORPSE_FLAG_HIDE_HELM; if(HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_CLOAK)) flags |= CORPSE_FLAG_HIDE_CLOAK; - if(InBattleGround()) - flags |= CORPSE_FLAG_LOOTABLE; // to be able to remove insignia + flags |= CORPSE_FLAG_LOOTABLE; // to be able to remove insignia corpse->SetUInt32Value( CORPSE_FIELD_FLAGS, flags ); corpse->SetUInt32Value( CORPSE_FIELD_DISPLAY_ID, GetNativeDisplayId() ); @@ -6993,8 +6992,8 @@ bool Player::CheckAmmoCompatibility(const ItemPrototype *ammo_proto) const Called by remove insignia spell effect */ void Player::RemovedInsignia(Player* looterPlr) { - if (!GetBattleGroundId()) - return; +// if (!GetBattleGroundId()) because we want lootable players everywhere +// return; // If not released spirit, do it ! if(m_deathTimer > 0) @@ -7139,6 +7138,7 @@ void Player::SendLoot(uint64 guid, LootType loot_type) bones->lootForBody = true; uint32 pLevel = bones->loot.gold; bones->loot.clear(); + loot->FillLoot(1, LootTemplates_Creature, this); //1 is the id in creature_template // It may need a better formula // Now it works like this: lvl10: ~6copper, lvl70: ~9silver bones->loot.gold = (uint32)( urand(50, 150) * 0.016f * pow( ((float)pLevel)/5.76f, 2.5f) * sWorld.getRate(RATE_DROP_MONEY) ); Idk if its reposts just though i should share em
  11. MaNGOS Vehicle Patch , For 9795 . Patch : PasteBin URL : http://xees.pastebin.com/hmMVreiM Also Need This : Vehicle Tables SQL : DROP TABLE IF EXISTS `vehicle_data`; CREATE TABLE `vehicle_data` ( `entry` mediumint(5) unsigned NOT NULL, `flags` mediumint(8) unsigned NOT NULL default '0', `Spell1` mediumint(8) unsigned NOT NULL default '0', `Spell2` mediumint(8) unsigned NOT NULL default '0', `Spell3` mediumint(8) unsigned NOT NULL default '0', `Spell4` mediumint(8) unsigned NOT NULL default '0', `Spell5` mediumint(8) unsigned NOT NULL default '0', `Spell6` mediumint(8) unsigned NOT NULL default '0', `Spell7` mediumint(8) unsigned NOT NULL default '0', `Spell8` mediumint(8) unsigned NOT NULL default '0', `Spell9` mediumint(8) unsigned NOT NULL default '0', `Spell10` mediumint(8) unsigned NOT NULL default '0', `req_aura` mediumint(8) unsigned NOT NULL default '0', PRIMARY KEY (`entry`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Vehicle System'; DROP TABLE IF EXISTS `vehicle_seat_data`; CREATE TABLE `vehicle_seat_data` ( `seat` mediumint(5) unsigned NOT NULL, `flags` mediumint(8) unsigned NOT NULL default '0', PRIMARY KEY (`seat`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Vehicle Seat System'; ALTER TABLE creature_addon ADD COLUMN vehicle_id smallint(5) unsigned NOT NULL default '0' AFTER moveflags, ADD COLUMN passengers text AFTER vehicle_id; ALTER TABLE creature_template_addon ADD COLUMN vehicle_id smallint(5) unsigned NOT NULL default '0' AFTER moveflags, ADD COLUMN passengers text AFTER vehicle_id; Vehicle Data SQL : PasteBin URL : http://xees.pastebin.com/RTR3y1Wf URL To Download Full Patch With SQL's : http://www.mediafire.com/?jnu4ngdej2u I have no Idea Who Made This , i Do Not Know if They Are 100% Correct , but i would like to know Since its a Huge File with over 3000 Lines of Code .
  12. Converting ArcEmu Lua Engine And Implanting it to MaNGOS Core idk its called LuaHyperArc i think. if someone would start doing this project he or she will get a lot of donations , and extreme support due to People who love Arcemu leaving it because MaNGOS will Support Lua. it seems every Thread about Lua to MaNGOS gets closed or Deleted. Would The Admins of Getmangos Please think about this before Refusing it and telling us its Not related to core , its an ADDON like Scriptdev2 . I Know 100% . This IS Not Related to MaNGOS or Getmangos in anyway . This IS Not Related to Scriptdev2 in anyway. But it would be a Great asset to use as External Scripting Library. just like Scriptdev2. PLEASE READ BELOW AND SEE , IV TAKEN A LOT OF TIME AND SEARCHED A LOT TO FIND THIS Scriptdev2 Pro's : * 1- More commands and styles of code to go over in C++. * 2- Extremely Fast to load and Execute. * 3- Syntax oriented environment. * 4- Very Powerful And Unlimited Functions. * 5- C++ is more accepted and can be used in more situations. Scriptdev2 Con's : * 6-Harder language to learn. - You will struggle with the language * 7-Harder to code for. - The Code for LUA is soo much simpler. * 8-C++ can seem hopelessly complex , and after a few hours , maybe days people tend to stop trying to learn it. Lua Pro's: * 1-Lua is 10x Times Faster to Code in. * 2-Lua debugging is a lot easier then C++ * 3-Lua isn't as slow as people make out. its faster than python and ruby which it is often paired against. * 4-Lua has basic programming concepts, Learning Lua Takes about 100% less time then Learning C++ * 5-Large Number of Coders Able And Welling To Work With This Language. * 6-100% Bigger Support then C++ , Due to Lua having Large Number of Experts Compared to C++
  13. Latest Rev of MaNGOS and Scriptdev2 Everytime i teleport to that specefic area it crashes , it happend after i spawned an npc in that area. ofc i deleted the npc from the database right away but the crash is still happening . Revision: * * 9671 * Exception code: C0000005 ACCESS_VIOLATION Fault address: 0361D9D6 01:0002C9D6 C:\\Users\\Administrator\\Desktop\\funrealm\\start\\mangosscript.dll Registers: EAX:00000000 EBX:ED6D1378 ECX:00000000 EDX:05677868 ESI:000026E9 EDI:00000000 CS:EIP:0023:0361D9D6 SS:ESP:002B:09B1AED0 EBP:09B1AEDC DS:002B ES:002B FS:0053 GS:002B Flags:00010216 Call stack: Address Frame Function SourceFile 0361D9D6 00000000 ?GetSpawnMode@Map@@QBEEXZ+1356 0361D97B 00000000 ?GetSpawnMode@Map@@QBEEXZ+12FB 0361D8D2 00000000 ?GetSpawnMode@Map@@QBEEXZ+1252 0361C76B 00000000 ?GetSpawnMode@Map@@QBEEXZ+EB 03726B45 00000000 GetAI+35 006F1F79 00000000 FactorySelector::selectAI+F9 004BB3D1 00000000 Creature::AIM_Initialize+51 006E5914 00000000 TemporarySummon::Summon+64 00460231 00000000 WorldObject::SummonCreature+361 0361D24C 00000000 ?GetSpawnMode@Map@@QBEEXZ+BCC 0361CFE8 00000000 ?GetSpawnMode@Map@@QBEEXZ+968 0361CF7A 00000000 ?GetSpawnMode@Map@@QBEEXZ+8FA 0361C6EB 00000000 ?GetSpawnMode@Map@@QBEEXZ+6B 03726B45 00000000 GetAI+35 006F1F79 00000000 FactorySelector::selectAI+F9 004BB3D1 00000000 Creature::AIM_Initialize+51 004BD9FC 00000000 Creature::LoadFromDB+55C 00798569 00000000 LoadHelper<Creature>+149 00797D31 00000000 ObjectGridLoader::Visit+101 00798C2F 00000000 VisitorHelper<ObjectGridLoader,Creature>+F 00798AE0 00000000 VisitorHelper<ObjectGridLoader,Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > >+10 007989D3 00000000 VisitorHelper<ObjectGridLoader,GameObject,TypeList<Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > > >+23 00798910 00000000 VisitorHelper<ObjectGridLoader,TypeList<GameObject,TypeList<Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > > > >+10 00797E5C 00000000 ObjectGridLoader::Load+1C 00797FA5 00000000 ObjectGridLoader::LoadN+F5 004D431E 00000000 Map::EnsureGridLoaded+18E 004D4052 00000000 Map::EnsureGridLoadedAtEnter+22 004D5B1E 00000000 Map::PlayerRelocation+2EE 0051DF06 00000000 Player::SetPosition+1D6 0084A46A 00000000 WorldSession::HandleMoveTeleportAck+1EA 0062AB40 00000000 WorldSession::Update+120 0063AB33 00000000 World::UpdateSessions+C3 006393C5 00000000 World::Update+365 0045448E 00000000 WorldRunnable::run+8E 008CF2C9 00000000 ACE_Based::Thread::ThreadTask+19 74301B84 00000000 __WSAFDIsSet+FFFFFFFFFFFCCB4C 74673433 00000000 _endthreadex+44 746734C7 00000000 _endthreadex+D8 76B8E4A5 00000000 BaseThreadInitThunk+E 7777CFED 00000000 RtlCreateUserProcess+8C 7777D1FF 00000000 RtlCreateProcessParameters+4E ======================== Local Variables And Parameters Call stack: Address Frame Function SourceFile 0361D9D6 00000000 ?GetSpawnMode@Map@@QBEEXZ+1356 0361D97B 00000000 ?GetSpawnMode@Map@@QBEEXZ+12FB 0361D8D2 00000000 ?GetSpawnMode@Map@@QBEEXZ+1252 0361C76B 00000000 ?GetSpawnMode@Map@@QBEEXZ+EB 03726B45 00000000 GetAI+35 006F1F79 00000000 FactorySelector::selectAI+F9 Local <user defined> 'scriptedAI' Local <user defined> 'creature' Local <user defined> 'ainame' Local <user defined> 'owner' Local <user defined> 'ai_registry' Local <user defined> 'ai_factory' 004BB3D1 00000000 Creature::AIM_Initialize+51 Local <user defined> 'this' Local <user defined> 'oldAI' 006E5914 00000000 TemporarySummon::Summon+64 Local <user defined> 'this' Local <user defined> 'type' punting on symbol lifetime 00460231 00000000 WorldObject::SummonCreature+361 Local <user defined> 'this' punting on symbol id punting on symbol x punting on symbol y punting on symbol z punting on symbol ang Local <user defined> 'spwtype' punting on symbol despwtime punting on symbol team Local <user defined> 'pCreature' 0361D24C 00000000 ?GetSpawnMode@Map@@QBEEXZ+BCC 0361CFE8 00000000 ?GetSpawnMode@Map@@QBEEXZ+968 0361CF7A 00000000 ?GetSpawnMode@Map@@QBEEXZ+8FA 0361C6EB 00000000 ?GetSpawnMode@Map@@QBEEXZ+6B 03726B45 00000000 GetAI+35 006F1F79 00000000 FactorySelector::selectAI+F9 Local <user defined> 'scriptedAI' Local <user defined> 'creature' Local <user defined> 'ainame' Local <user defined> 'owner' Local <user defined> 'ai_registry' Local <user defined> 'ai_factory' 004BB3D1 00000000 Creature::AIM_Initialize+51 Local <user defined> 'this' Local <user defined> 'oldAI' 004BD9FC 00000000 Creature::LoadFromDB+55C Local <user defined> 'this' punting on symbol guid Local <user defined> 'map' Local <user defined> 'data' punting on symbol team punting on symbol curhealth 00798569 00000000 LoadHelper<Creature>+149 Local <user defined> 'obj' punting on symbol guid Local <user defined> 'i_guid' Local <user defined> 'guid_set' Local <user defined> 'cell' Local <user defined> 'm' Local <user defined> 'count' Local <user defined> 'map' Local <user defined> 'bg' 00797D31 00000000 ObjectGridLoader::Visit+101 Local <user defined> 'this' Local <user defined> 'm' Local <user defined> 'cell_pair' punting on symbol x punting on symbol y punting on symbol cell_id Local <user defined> 'cell_guids' 00798C2F 00000000 VisitorHelper<ObjectGridLoader,Creature>+F Local <user defined> 'v' Local <user defined> 'c' 00798AE0 00000000 VisitorHelper<ObjectGridLoader,Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > >+10 Local <user defined> 'v' Local <user defined> 'c' 007989D3 00000000 VisitorHelper<ObjectGridLoader,GameObject,TypeList<Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > > >+23 Local <user defined> 'v' Local <user defined> 'c' 00798910 00000000 VisitorHelper<ObjectGridLoader,TypeList<GameObject,TypeList<Creature,TypeList<DynamicObject,TypeList<Corpse,TypeNull> > > > >+10 Local <user defined> 'v' Local <user defined> 'c' 00797E5C 00000000 ObjectGridLoader::Load+1C Local <user defined> 'loader' Local <user defined> 'this' Local <user defined> 'grid' 00797FA5 00000000 ObjectGridLoader::LoadN+F5 punting on symbol y punting on symbol x Local <user defined> 'this' 004D431E 00000000 Map::EnsureGridLoaded+18E Local <user defined> 'loader' Local <user defined> 'this' Local <user defined> 'cell' Local <user defined> 'grid' 004D4052 00000000 Map::EnsureGridLoadedAtEnter+22 Local <user defined> 'this' Local <user defined> 'cell' Local <user defined> 'player' Local <user defined> 'grid' 004D5B1E 00000000 Map::PlayerRelocation+2EE Local <user defined> 'this' Local <user defined> 'player' punting on symbol x punting on symbol y punting on symbol z punting on symbol orientation Local <user defined> 'new_cell' punting on symbol same_cell Local <user defined> 'old_cell' Local <user defined> 'new_val' Local <user defined> 'newGrid' Local <user defined> 'old_val' 0051DF06 00000000 Player::SetPosition+1D6 Local <user defined> 'this' punting on symbol x punting on symbol y punting on symbol z punting on symbol orientation punting on symbol teleport Local <user defined> 'm' Local <user defined> 'old_r' Local <user defined> 'old_x' Local <user defined> 'old_z' Local <user defined> 'old_y' 0084A46A 00000000 WorldSession::HandleMoveTeleportAck+1EA Local <user defined> 'this' Local <user defined> 'recv_data' Local <user defined> 'plMover' punting on symbol newzone Local <user defined> 'mover' punting on symbol old_zone punting on symbol time Local <user defined> 'dest' punting on symbol flags Local <user defined> 'guid' punting on symbol newarea 0062AB40 00000000 WorldSession::Update+120 Local <user defined> 'opHandle' Local <user defined> 'this' punting on symbol __formal Local <user defined> 'packet' punting on symbol currTime 0063AB33 00000000 World::UpdateSessions+C3 Local <user defined> 'next' Local <user defined> 'itr' Local <user defined> 'this' punting on symbol diff Local <user defined> 'sess' 006393C5 00000000 World::Update+365 punting on symbol i Local <user defined> 'this' punting on symbol diff 0045448E 00000000 WorldRunnable::run+8E punting on symbol diff Local <user defined> 'this' punting on symbol realCurrTime punting on symbol realPrevTime punting on symbol prevSleepTime 008CF2C9 00000000 ACE_Based::Thread::ThreadTask+19 punting on symbol param Local <user defined> '_task' 74301B84 00000000 __WSAFDIsSet+FFFFFFFFFFFCCB4C 74673433 00000000 _endthreadex+44 746734C7 00000000 _endthreadex+D8 76B8E4A5 00000000 BaseThreadInitThunk+E 7777CFED 00000000 RtlCreateUserProcess+8C 7777D1FF 00000000 RtlCreateProcessParameters+4E ======================== Global Variables <user defined> '?GetEntry@Object@@QBEIXZ' <user defined> '?GetUInt32Value@Object@@QBEABIG@Z' <user defined> '?IsWithinDist@WorldObject@@QBE_NPBV1@M_N@Z' <user defined> '?IsWithinDistInMap@WorldObject@@QBE_NPBV1@M_N@Z' <user defined> '?IsInMap@WorldObject@@QBE_NPBV1@@Z' <user defined> '?IsInWorld@Object@@QBEAB_NXZ' <user defined> '?InSamePhase@WorldObject@@QBE_NPBV1@@Z' <user defined> '?InSamePhase@WorldObject@@QBE_NI@Z' <user defined> '?GetMap@WorldObject@@QBEPAVMap@@XZ' <user defined> '?MovementExpired@MotionMaster@@QAEX_N@Z' <user defined> '?getVictim@Unit@@QBEPAV1@XZ' <user defined> '?getFaction@Unit@@QBEIXZ' <user defined> '?setFaction@Unit@@QAEXI@Z' <user defined> '?GetMotionMaster@Unit@@QAEPAVMotionMaster@@XZ' <user defined> '?canFly@Creature@@QBE_NXZ' <user defined> '?AddSplineFlag@Creature@@QAEXW4SplineFlags@@@Z' <user defined> '?RemoveSplineFlag@Creature@@QAEXW4SplineFlags@@@Z' <user defined> '?HasSplineFlag@Creature@@QBE_NW4SplineFlags@@@Z' <user defined> '?GetCreatureInfo@Creature@@QBEPBUCreatureInfo@@XZ' <user defined> '?GetCombatStartPosition@Creature@@QAEXAAM00@Z' <user defined> '?HealBy@CreatureAI@@UAEXPAVUnit@@I@Z' <user defined> '?ReceiveEmote@CreatureAI@@UAEXPAVPlayer@@I@Z' <user defined> '?HandleUnused@Aura@@QAEX_N0@Z' <user defined> '?HandleNULL@Aura@@QAEX_N0@Z' <user defined> '?SpellHitTarget@CreatureAI@@UAEXPAVUnit@@PBUSpellEntry@@@Z' <user defined> '?ProhibitSpellSchool@Unit@@UAEXW4SpellSchoolMask@@I@Z' <user defined> '?SpellHit@CreatureAI@@UAEXPAVUnit@@PBUSpellEntry@@@Z' <user defined> '?HandleNoImmediateEffect@Aura@@QAEX_N0@Z' <user defined> '?DamageDeal@CreatureAI@@UAEXPAVUnit@@AAI@Z' <user defined> '?DamageTaken@CreatureAI@@UAEXPAVUnit@@AAI@Z' <user defined> '?MovementInform@CreatureAI@@UAEXII@Z' <user defined> '?SetData@InstanceData@@UAEXII@Z' <user defined> '?getBValue@ThreatRefStatusChangeEvent@@QBE_NXZ' <user defined> '?IsDungeon@Map@@QBE_NXZ' <user defined> '?GetFirstMember@Group@@QAEPAVGroupReference@@XZ' <user defined> '?GetGroup@Player@@QBEPBVGroup@@XZ' <user defined> '?GetGroup@Player@@QAEPAVGroup@@XZ' <user defined> '?GetObjectGuid@Object@@QBEABVObjectGuid@@XZ' <user defined> '?GetGUID@Object@@QBEAB_KXZ' <user defined> '?GetUInt64Value@Object@@QBEAB_KG@Z' <user defined> '?Clear@MotionMaster@@QAEX_N0@Z' <user defined> '?isAlive@Unit@@QBE_NXZ' <user defined> '?isAttackReady@Unit@@QBE_NW4WeaponAttackType@@@Z' <user defined> '?GetHealthPercent@Unit@@QBEMXZ' <user defined> '?GetHealth@Unit@@QBEIXZ' <user defined> '?GetMaxHealth@Unit@@QBEIXZ' <user defined> '?isInCombat@Unit@@QBE_NXZ' <user defined> '?HasFlag@Object@@QBE_NGI@Z' <user defined> '?GetTeam@Player@@QBEIXZ' <user defined> '??0ObjectGuid@@QAE@XZ' <user defined> '?GetTypeId@Object@@QBEEXZ' <user defined> '?GetCurrentSpell@Unit@@QBEPAVSpell@@W4CurrentSpellTypes@@@Z' <user defined> '?rend@?$RefManager@V?$GridRefManager@V?$NGrid@$07VPlayer@@U?$TypeList@VPlayer@@U?$TypeList@VCreature@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@U?$TypeList@VGameObject@@U?$TypeList@VCreature@@U?$TypeList@VDynamicObject@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@@@V?$SingleThreaded@VPlayer@@@MaNGOS@@@@@@V?$NGrid@$07VPlayer@@U?$TypeList@VPlayer@@U?$TypeList@VCreature@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@U?$TypeList@VGameObject@@U?$TypeList@VCreature@@U?$TypeList@VDynamicObject@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@@@V?$SingleThreaded@VPlayer@@@MaNGOS@@@@@@QAE?AV?$Iterator@V?$Reference@V?$GridRefManager@V?$NGrid@$07VPlayer@@U?$TypeList@VPlayer@@U?$TypeList@VCreature@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@U?$TypeList@VGameObject@@U?$TypeList@VCreature@@U?$TypeList@VDynamicObject@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@@@V?$SingleThreaded@VPlayer@@@MaNGOS@@@@@@V?$NGrid@$07VPlayer@@U?$TypeList@VPlayer@@U?$TypeList@VCreature@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@U?$TypeList@VGameObject@@U?$TypeList@VCreature@@U?$TypeList@VDynamicObject@@U?$TypeList@VCorpse@@VTypeNull@@@@@@@@@@V?$SingleThreaded@VPlayer@@@MaNGOS@@@@@@@LinkedListHead@@XZ'
  14. i really recommend not doing this , since this is a learning c++ project , adding lua will drive people out of learning c++ unless this isnt a learning project . then its alright Pros : 1- Will get an Extremely large amount of people to mangos 2- Will drive out a lot of people out of ArcEmu because it would have All Pros of ArcEmu without the Cons. 3- Will increase number of Donations to MaNGOS project. 4- Will increase Support for MaNGOS. 5- Almost Every Server out there will be using MaNGOS. 6- Will Increase Number of Patches for MaNGOS and Contributors. 7- Will improve Database Support a lot, more Contributors. Cons: 1- Learning C++ will no longer be the important thing in this project.
×
×
  • 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