Jump to content

Darkknight900

Members
  • Posts

    101
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by Darkknight900

  1. Rewrote it updated my post!! Will reopen branch now!
  2. scanned your patch and found also GO Type 33, rewritten combopoint access mostly caused by the pet rewrite i think, and also some not needed parts at Spell::CheckTarget and Spell::CheckPetCast. But with this patch you will surely get the vehicles working.
  3. fixxed with https://github.com/mangos/mangos/commit/1b3452f918c06fb328cb4187bb844e7a2ecd7ffe
  4. Just got some time and searched mangos/sql, mangos/src/game, mangos/src/mangosd abd mangos/src/shared for trailing whitespaces and more <.< (tabs to spaces and so on) Here the patch if you want ^^ Rev 11368! diff --git a/sql/mangos_spell_check.sql b/sql/mangos_spell_check.sql index e274567..456fefa 100644 --- a/sql/mangos_spell_check.sql +++ b/sql/mangos_spell_check.sql @@ -17,7 +17,7 @@ /* Current table fill progress state: */ /* SpellEffect.cpp from start until end of Spell::EffectTameCreature */ -/* Spell.cpp */ +/* Spell.cpp */ /* at 6ee669d1d52581d4707c6475b512e6cc53844121 [9944] state */ DROP TABLE IF EXISTS spell_check; @@ -616,7 +616,7 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas /* sorted by spell names */ /*id fm familyMaskA fmMaskB icon vis cat eff aur ef name code */ -( 0,15, -1, -1,2710, -1, -1, -1, 4,-1,'Annihilation', 'Spell::EffectDummy'), +( 0,15, -1, -1,2710, -1, -1, -1, 4,-1,'Annihilation', 'Spell::EffectDummy'), ( 0, 3,0x0000000020000000,0x00000000, -1, -1, -1, 2, -1,-1,'Arcane Blast', 'Spell::EffectSchoolDMG'), ( 0, 3,0x0000000000200080,0x00000000, -1, -1, -1, -1, -1,-1,'Arcane Missles / Blizzard', 'Spell::prepareDataForTriggerSystem'), ( 0, 9,0x0000000000000800,0x00000000, -1, -1, -1, 2, -1,-1,'Arcane Shot', 'Spell::EffectSchoolDMG'), @@ -632,8 +632,8 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas ( 0,11,0x0000000004000000,0x00000000,1673, -1, -1, 3, -1,-1,'Cleansing Totem', 'Spell::EffectDummy'), ( 0, 3,0x0000000200000000,0x00000008, -1, -1, -1, -1, -1,-1,'Clearcasting', 'Spell::prepareDataForTriggerSystem'), ( 0, 4,0x0000000004000000,0x00000000, -1, -1, -1, 3, -1,-1,'Concussion Blow', 'Spell::EffectDummy'), -( 0, 3, -1, -1, -1, -1, -1, 3, -1, 1,'Conjure Mana Gem', 'Spell::EffectDummy'), /*part 1*/ -( 0, 3, -1, -1, -1, -1, -1, 24, -1, 0,'Conjure Mana Gem', 'Spell::EffectDummy'), /*part 2*/ +( 0, 3, -1, -1, -1, -1, -1, 3, -1, 1,'Conjure Mana Gem', 'Spell::EffectDummy'), /*part 1*/ +( 0, 3, -1, -1, -1, -1, -1, 24, -1, 0,'Conjure Mana Gem', 'Spell::EffectDummy'), /*part 2*/ ( 0, 3, -1, -1, -1, -1, -1, 24, -1, 0,'Conjure Mana Gem', 'Spell::CheckItems'), ( 0, 9,0x0008000000000000,0x00000000, -1, -1, -1, 2, -1,-1,'Counterattack', 'Spell::EffectSchoolDMG'), ( 0, 5, -1, -1, -1, -1,1179, -1, -1,-1,'Curse of Doom', 'Spell::CheckTargetCreatureType'), @@ -661,7 +661,7 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas ( 0, 5,0x0004000000000000,0x00000000,3172, -1, -1, -1, 4,-1,'Haunt', 'Spell::DoAllEffectOnTarget'), ( 0,11,0x0000000000002000,0x00000000, -1, -1, -1, 3, -1,-1,'Healing Stream Totem', 'Spell::EffectDummy'), ( 0, 4,0x0000800000000060,0x00000000, -1, -1, -1, -1, -1,-1,'Hellfire Effect / Rain of Fire / Seed of Corruption','Spell::prepareDataForTriggerSystem'), -( 0, 8,0x0000000002800000,0x00000000, -1, -1, -1, -1, -1,-1,'Hemorrhage', 'Spell::EffectWeaponDmg'), +( 0, 8,0x0000000002800000,0x00000000, -1, -1, -1, -1, -1,-1,'Hemorrhage', 'Spell::EffectWeaponDmg'), ( 0, 4,0x0000000100000000,0x00000000, -1, -1, -1, 2, -1,-1,'Heroic Throw', 'Spell::EffectSchoolDMG'), ( 0,10, -1, -1, 156, -1, -1, 3, -1,-1,'Holy Shock', 'Spell::EffectDummy'), ( 0,-1, -1, -1, 156, -1, -1, 3, -1,-1,'Holy Shock', 'Spell::CheckCast'), @@ -709,7 +709,7 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas ( 0, 7,0x0000000000000010,0x00000000, -1, -1, -1, -1, 8,-1,'Rejuvenation', 'Spell::EffectHeal'), ( 0, 3,0x0000010000000000,0x00000000, -1, -1, -1, -1, -1,-1,'Replenish Mana', 'Spell::prepareDataForTriggerSystem'), ( 0,11,0x0000000000000000,0x00000010, -1, -1, -1, -1, 8,-1,'Riptide', 'Spell::EffectHeal'), -( 0,11, -1, -1, 338, -1, -1, -1, 4, 1,'Restorative Totems', 'Spell::EffectSchoolDMG'), /*part 1*/ +( 0,11, -1, -1, 338, -1, -1, -1, 4, 1,'Restorative Totems', 'Spell::EffectSchoolDMG'), /*part 1*/ ( 0, 4,0x0000000000000400,0x00000000, -1, -1, -1, 2, -1,-1,'Revenge', 'Spell::EffectSchoolDMG'), ( 0,11,0x0000000000400000,0x00000000, -1, -1, -1, 54, -1,-1,'Rockbiter Weapon', 'Spell::EffectEnchantItemTmp'), ( 0,15,0x0800000000000000,0x00000000, -1, -1, -1, -1, -1,-1,'Scourge Strike', 'Spell::DoAllEffectOnTarget'), diff --git a/sql/postgre_compatibility_addon.sql b/sql/postgre_compatibility_addon.sql index 105d65f..fa00d49 100644 --- a/sql/postgre_compatibility_addon.sql +++ b/sql/postgre_compatibility_addon.sql @@ -8,19 +8,19 @@ -- no params CREATE OR REPLACE FUNCTION unix_timestamp() RETURNS bigint AS ' - SELECT EXTRACT(EPOCH FROM CURRENT_TIMESTAMP(0))::bigint AS result; + SELECT EXTRACT(EPOCH FROM CURRENT_TIMESTAMP(0))::bigint AS result; ' LANGUAGE 'SQL'; -- timestamp without time zone (i.e. 1973-11-29 21:33:09) CREATE OR REPLACE FUNCTION unix_timestamp(timestamp) RETURNS bigint AS ' - SELECT EXTRACT(EPOCH FROM $1)::bigint AS result; + SELECT EXTRACT(EPOCH FROM $1)::bigint AS result; ' LANGUAGE 'SQL'; -- timestamp with time zone (i.e. 1973-11-29 21:33:09+01) CREATE OR REPLACE FUNCTION unix_timestamp(timestamp WITH time zone) RETURNS bigint AS ' - SELECT EXTRACT(EPOCH FROM $1)::bigint AS result; + SELECT EXTRACT(EPOCH FROM $1)::bigint AS result; ' LANGUAGE 'SQL'; CREATE OR REPLACE FUNCTION from_unixtime(integer) RETURNS timestamp AS ' - SELECT to_timestamp($1)::timestamp AS result + SELECT to_timestamp($1)::timestamp AS result ' LANGUAGE 'SQL'; diff --git a/sql/updates/0.14/7988_07_characters_characters.sql b/sql/updates/0.14/7988_07_characters_characters.sql index 246a93a..ef72b5f 100644 --- a/sql/updates/0.14/7988_07_characters_characters.sql +++ b/sql/updates/0.14/7988_07_characters_characters.sql @@ -4,34 +4,34 @@ UPDATE characters SET data = REPLACE(data,' ',' '); UPDATE characters SET data = CONCAT(TRIM(data),' '); UPDATE `characters` SET `data` = CONCAT( - SUBSTRING_INDEX(`data`, ' ', 257 + 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 1), ' ', -261 + 260 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18 + 1), ' ', -261 - 18 + 260 + 18 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*2 + 1), ' ', -261 - 18*2 + 260 + 18*2 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*3 + 1), ' ', -261 - 18*3 + 260 + 18*3 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*4 + 1), ' ', -261 - 18*4 + 260 + 18*4 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*5 + 1), ' ', -261 - 18*5 + 260 + 18*5 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*6 + 1), ' ', -261 - 18*6 + 260 + 18*6 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*7 + 1), ' ', -261 - 18*7 + 260 + 18*7 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*8 + 1), ' ', -261 - 18*8 + 260 + 18*8 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*9 + 1), ' ', -261 - 18*9 + 260 + 18*9 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*10 + 1), ' ', -261 - 18*10 + 260 + 18*10 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*11 + 1), ' ', -261 - 18*11 + 260 + 18*11 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*12 + 1), ' ', -261 - 18*12 + 260 + 18*12 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*13 + 1), ' ', -261 - 18*13 + 260 + 18*13 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*14 + 1), ' ', -261 - 18*14 + 260 + 18*14 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*15 + 1), ' ', -261 - 18*15 + 260 + 18*15 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*16 + 1), ' ', -261 - 18*16 + 260 + 18*16 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*17 + 1), ' ', -261 - 18*17 + 260 + 18*17 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*18 + 1), ' ', -261 - 18*18 + 260 + 18*18 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 837 + 1), ' ', -837 + 600 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 937 + 1), ' ', -937 + 874 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1007 + 1), ' ', -1007 + 1002 - 1), ' ', - '0 0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1688 + 1), ' ', -1688 + 1008 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1696 + 1), ' ', -1696 + 1691 - 1), ' ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1700 + 1), ' ', -1700 + 1699 - 1), ' ' - ) + SUBSTRING_INDEX(`data`, ' ', 257 + 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 1), ' ', -261 + 260 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18 + 1), ' ', -261 - 18 + 260 + 18 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*2 + 1), ' ', -261 - 18*2 + 260 + 18*2 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*3 + 1), ' ', -261 - 18*3 + 260 + 18*3 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*4 + 1), ' ', -261 - 18*4 + 260 + 18*4 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*5 + 1), ' ', -261 - 18*5 + 260 + 18*5 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*6 + 1), ' ', -261 - 18*6 + 260 + 18*6 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*7 + 1), ' ', -261 - 18*7 + 260 + 18*7 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*8 + 1), ' ', -261 - 18*8 + 260 + 18*8 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*9 + 1), ' ', -261 - 18*9 + 260 + 18*9 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*10 + 1), ' ', -261 - 18*10 + 260 + 18*10 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*11 + 1), ' ', -261 - 18*11 + 260 + 18*11 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*12 + 1), ' ', -261 - 18*12 + 260 + 18*12 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*13 + 1), ' ', -261 - 18*13 + 260 + 18*13 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*14 + 1), ' ', -261 - 18*14 + 260 + 18*14 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*15 + 1), ' ', -261 - 18*15 + 260 + 18*15 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*16 + 1), ' ', -261 - 18*16 + 260 + 18*16 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*17 + 1), ' ', -261 - 18*17 + 260 + 18*17 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 261 + 18*18 + 1), ' ', -261 - 18*18 + 260 + 18*18 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 837 + 1), ' ', -837 + 600 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 937 + 1), ' ', -937 + 874 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1007 + 1), ' ', -1007 + 1002 - 1), ' ', + '0 0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1688 + 1), ' ', -1688 + 1008 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1696 + 1), ' ', -1696 + 1691 - 1), ' ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1700 + 1), ' ', -1700 + 1699 - 1), ' ' + ) WHERE length(SUBSTRING_INDEX(data, ' ', 1700)) < length(data) and length(SUBSTRING_INDEX(data, ' ', 1701)) >= length(data); UPDATE characters SET data = REPLACE(data,' ',' '); diff --git a/sql/updates/0.15/8589_11_characters_characters.sql b/sql/updates/0.15/8589_11_characters_characters.sql index 663f135..2ab2a27 100644 --- a/sql/updates/0.15/8589_11_characters_characters.sql +++ b/sql/updates/0.15/8589_11_characters_characters.sql @@ -4,13 +4,13 @@ UPDATE characters SET data = REPLACE(data,' ',' '); UPDATE characters SET data = CONCAT(TRIM(data),' '); UPDATE `characters` SET `data` = CONCAT( - SUBSTRING_INDEX(`data`, ' ', 1167 + 1), ' ', - '0 0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1246 + 1), ' ', -1246 + 1168 - 1), ' ', - '0 0 0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1294 + 1), ' ', -1294 + 1247 - 1), ' ', - '0 ' - ) + SUBSTRING_INDEX(`data`, ' ', 1167 + 1), ' ', + '0 0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1246 + 1), ' ', -1246 + 1168 - 1), ' ', + '0 0 0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1294 + 1), ' ', -1294 + 1247 - 1), ' ', + '0 ' + ) WHERE length(SUBSTRING_INDEX(data, ' ', 1294)) < length(data) and length(SUBSTRING_INDEX(data, ' ', 1294+1)) >= length(data); UPDATE characters SET data = REPLACE(data,' ',' '); diff --git a/sql/updates/0.16/09136_07_characters_characters.sql b/sql/updates/0.16/09136_07_characters_characters.sql index f456e10..5c55928 100644 --- a/sql/updates/0.16/09136_07_characters_characters.sql +++ b/sql/updates/0.16/09136_07_characters_characters.sql @@ -4,60 +4,60 @@ UPDATE characters SET data = REPLACE(data,' ',' '); UPDATE characters SET data = CONCAT(TRIM(data),' '); UPDATE `characters` SET `data` = CONCAT( - SUBSTRING_INDEX(`data`, ' ', 161 + 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 1), ' ', -165 + 162 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4 + 1), ' ', -165 - 4 + 162 + 4 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*2 + 1), ' ', -165 - 4*2 + 162 + 4*2 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*3 + 1), ' ', -165 - 4*3 + 162 + 4*3 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*4 + 1), ' ', -165 - 4*4 + 162 + 4*4 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*5 + 1), ' ', -165 - 4*5 + 162 + 4*5 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*6 + 1), ' ', -165 - 4*6 + 162 + 4*6 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*7 + 1), ' ', -165 - 4*7 + 162 + 4*7 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*8 + 1), ' ', -165 - 4*8 + 162 + 4*8 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*9 + 1), ' ', -165 - 4*9 + 162 + 4*9 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*10 + 1), ' ', -165 - 4*10 + 162 + 4*10 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*11 + 1), ' ', -165 - 4*11 + 162 + 4*11 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*12 + 1), ' ', -165 - 4*12 + 162 + 4*12 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*13 + 1), ' ', -165 - 4*13 + 162 + 4*13 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*14 + 1), ' ', -165 - 4*14 + 162 + 4*14 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*15 + 1), ' ', -165 - 4*15 + 162 + 4*15 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*16 + 1), ' ', -165 - 4*16 + 162 + 4*16 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*17 + 1), ' ', -165 - 4*17 + 162 + 4*17 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*18 + 1), ' ', -165 - 4*18 + 162 + 4*18 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*19 + 1), ' ', -165 - 4*19 + 162 + 4*19 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*20 + 1), ' ', -165 - 4*20 + 162 + 4*20 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*21 + 1), ' ', -165 - 4*21 + 162 + 4*21 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*22 + 1), ' ', -165 - 4*22 + 162 + 4*22 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*23 + 1), ' ', -165 - 4*23 + 162 + 4*23 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 298 + 1), ' ', -298 + 162 + 4*24 - 1), ' ', - '0 ', - SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1300 + 1), ' ', -1300 + 299 - 1), ' ' - ) + SUBSTRING_INDEX(`data`, ' ', 161 + 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 1), ' ', -165 + 162 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4 + 1), ' ', -165 - 4 + 162 + 4 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*2 + 1), ' ', -165 - 4*2 + 162 + 4*2 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*3 + 1), ' ', -165 - 4*3 + 162 + 4*3 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*4 + 1), ' ', -165 - 4*4 + 162 + 4*4 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*5 + 1), ' ', -165 - 4*5 + 162 + 4*5 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*6 + 1), ' ', -165 - 4*6 + 162 + 4*6 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*7 + 1), ' ', -165 - 4*7 + 162 + 4*7 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*8 + 1), ' ', -165 - 4*8 + 162 + 4*8 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*9 + 1), ' ', -165 - 4*9 + 162 + 4*9 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*10 + 1), ' ', -165 - 4*10 + 162 + 4*10 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*11 + 1), ' ', -165 - 4*11 + 162 + 4*11 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*12 + 1), ' ', -165 - 4*12 + 162 + 4*12 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*13 + 1), ' ', -165 - 4*13 + 162 + 4*13 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*14 + 1), ' ', -165 - 4*14 + 162 + 4*14 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*15 + 1), ' ', -165 - 4*15 + 162 + 4*15 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*16 + 1), ' ', -165 - 4*16 + 162 + 4*16 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*17 + 1), ' ', -165 - 4*17 + 162 + 4*17 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*18 + 1), ' ', -165 - 4*18 + 162 + 4*18 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*19 + 1), ' ', -165 - 4*19 + 162 + 4*19 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*20 + 1), ' ', -165 - 4*20 + 162 + 4*20 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*21 + 1), ' ', -165 - 4*21 + 162 + 4*21 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*22 + 1), ' ', -165 - 4*22 + 162 + 4*22 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 165 + 4*23 + 1), ' ', -165 - 4*23 + 162 + 4*23 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 298 + 1), ' ', -298 + 162 + 4*24 - 1), ' ', + '0 ', + SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1300 + 1), ' ', -1300 + 299 - 1), ' ' + ) WHERE length(SUBSTRING_INDEX(data, ' ', 1300)) < length(data) and length(SUBSTRING_INDEX(data, ' ', 1300+1)) >= length(data); UPDATE characters SET data = REPLACE(data,' ',' '); diff --git a/sql/updates/0.5/1465_build_realmd_db.sql b/sql/updates/0.5/1465_build_realmd_db.sql index 1b52a8c..a65764c 100644 --- a/sql/updates/0.5/1465_build_realmd_db.sql +++ b/sql/updates/0.5/1465_build_realmd_db.sql @@ -2,7 +2,7 @@ -- -- Host: localhost Database: realmd -- ------------------------------------------------------ --- Server version 5.0.21 +-- Server version 5.0.21 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; diff --git a/sql/updates/0.7/3655_quest_template.sql b/sql/updates/0.7/3655_quest_template.sql index 8882fca..f67bd55 100644 --- a/sql/updates/0.7/3655_quest_template.sql +++ b/sql/updates/0.7/3655_quest_template.sql @@ -19,6 +19,6 @@ UPDATE `quest_template` SET `ZoneOrSort` = -304 WHERE `ZoneOrSort` = 0 AND `Req UPDATE `quest_template` SET `ZoneOrSort` = -324 WHERE `ZoneOrSort` = 0 AND `RequiredSkill` = 129; ALTER TABLE `quest_template` - ADD COLUMN `SuggestedPlayers` int(11) unsigned NOT NULL DEFAULT 0 AFTER `RequiredRepValue`, - DROP COLUMN `RequiredClass`, - DROP COLUMN `RequiredSkill`; + ADD COLUMN `SuggestedPlayers` int(11) unsigned NOT NULL DEFAULT 0 AFTER `RequiredRepValue`, + DROP COLUMN `RequiredClass`, + DROP COLUMN `RequiredSkill`; diff --git a/sql/updates/10156_01_characters_character_aura.sql b/sql/updates/10156_01_characters_character_aura.sql index f9f9087..94335c8 100644 --- a/sql/updates/10156_01_characters_character_aura.sql +++ b/sql/updates/10156_01_characters_character_aura.sql @@ -2,15 +2,15 @@ ALTER TABLE character_db_version CHANGE COLUMN required_10051_01_characters_char DELETE FROM `character_aura`; ALTER TABLE `character_aura` - DROP COLUMN `effect_index`, DROP COLUMN `amount`, DROP COLUMN `maxduration`, DROP COLUMN `remaintime`; + DROP COLUMN `effect_index`, DROP COLUMN `amount`, DROP COLUMN `maxduration`, DROP COLUMN `remaintime`; ALTER TABLE `character_aura` - ADD COLUMN `basepoints0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `basepoints1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `basepoints2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `effIndexMask` INT(11) NOT NULL DEFAULT '0'; \\ No newline at end of file + ADD COLUMN `basepoints0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `basepoints1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `basepoints2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `effIndexMask` INT(11) NOT NULL DEFAULT '0'; \\ No newline at end of file diff --git a/sql/updates/10156_02_characters_pet_aura.sql b/sql/updates/10156_02_characters_pet_aura.sql index 38f7472..18269bb 100644 --- a/sql/updates/10156_02_characters_pet_aura.sql +++ b/sql/updates/10156_02_characters_pet_aura.sql @@ -2,15 +2,15 @@ ALTER TABLE character_db_version CHANGE COLUMN required_10156_01_characters_char DELETE FROM `pet_aura`; ALTER TABLE `pet_aura` - DROP COLUMN `effect_index`, DROP COLUMN `amount`, DROP COLUMN `maxduration`, DROP COLUMN `remaintime`; + DROP COLUMN `effect_index`, DROP COLUMN `amount`, DROP COLUMN `maxduration`, DROP COLUMN `remaintime`; ALTER TABLE `pet_aura` - ADD COLUMN `basepoints0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `basepoints1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `basepoints2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `maxduration2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime0` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime1` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `remaintime2` INT(11) NOT NULL DEFAULT '0', - ADD COLUMN `effIndexMask` INT(11) NOT NULL DEFAULT '0'; \\ No newline at end of file + ADD COLUMN `basepoints0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `basepoints1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `basepoints2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `maxduration2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime0` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime1` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `remaintime2` INT(11) NOT NULL DEFAULT '0', + ADD COLUMN `effIndexMask` INT(11) NOT NULL DEFAULT '0'; \\ No newline at end of file diff --git a/sql/updates/10582_01_mangos_spell_proc_event.sql b/sql/updates/10582_01_mangos_spell_proc_event.sql index 2f70a0a..9111b9c 100644 --- a/sql/updates/10582_01_mangos_spell_proc_event.sql +++ b/sql/updates/10582_01_mangos_spell_proc_event.sql @@ -2,10 +2,10 @@ ALTER TABLE db_version CHANGE COLUMN required_10551_01_mangos_spell_proc_event r DELETE FROM spell_proc_event WHERE entry IN (67356, 67363, 67365, 67379, 67381, 67384, 67386, 67389, 67392); INSERT INTO spell_proc_event(entry, SchoolMask, SpellFamilyName, - SpellFamilyMaskA0, SpellFamilyMaskA1, SpellFamilyMaskA2, - SpellFamilyMaskB0, SpellFamilyMaskB1, SpellFamilyMaskB2, - SpellFamilyMaskC0, SpellFamilyMaskC1, SpellFamilyMaskC2, - procFlags, procEx, ppmRate, CustomChance, Cooldown) VALUES + SpellFamilyMaskA0, SpellFamilyMaskA1, SpellFamilyMaskA2, + SpellFamilyMaskB0, SpellFamilyMaskB1, SpellFamilyMaskB2, + SpellFamilyMaskC0, SpellFamilyMaskC1, SpellFamilyMaskC2, + procFlags, procEx, ppmRate, CustomChance, Cooldown) VALUES (67356, 0x00, 7, 0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00040000, 0.000000, 0.000000, 5), (67363, 0x00, 10, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 10), (67365, 0x00, 10, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 6), diff --git a/sql/updates/10604_01_mangos_spell_proc_event.sql b/sql/updates/10604_01_mangos_spell_proc_event.sql index 9ca5e7b..450f50d 100644 --- a/sql/updates/10604_01_mangos_spell_proc_event.sql +++ b/sql/updates/10604_01_mangos_spell_proc_event.sql @@ -4,10 +4,10 @@ DELETE FROM spell_proc_event WHERE entry IN (57907,62147,64952,64964,71174,71176,71178,71186,71191,71194,71198,71217,71226,71228); INSERT INTO spell_proc_event(entry, SchoolMask, SpellFamilyName, - SpellFamilyMaskA0, SpellFamilyMaskA1, SpellFamilyMaskA2, - SpellFamilyMaskB0, SpellFamilyMaskB1, SpellFamilyMaskB2, - SpellFamilyMaskC0, SpellFamilyMaskC1, SpellFamilyMaskC2, - procFlags, procEx, ppmRate, CustomChance, Cooldown) VALUES + SpellFamilyMaskA0, SpellFamilyMaskA1, SpellFamilyMaskA2, + SpellFamilyMaskB0, SpellFamilyMaskB1, SpellFamilyMaskB2, + SpellFamilyMaskC0, SpellFamilyMaskC1, SpellFamilyMaskC2, + procFlags, procEx, ppmRate, CustomChance, Cooldown) VALUES (57907, 0x00, 7, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.0, 0.0, 0), (62147, 0x00, 15, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000000, 0.0, 0.0, 0), (64952, 0x00, 7, 0x00000000, 0x00000000, 0x00000000, 0x00000440, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.0, 0.0, 0), diff --git a/src/game/DBCStructure.h b/src/game/DBCStructure.h index 98ff675..b3ed784 100644 --- a/src/game/DBCStructure.h +++ b/src/game/DBCStructure.h @@ -1252,7 +1252,7 @@ struct MapDifficultyEntry uint32 MapId; // 1 m_mapID uint32 Difficulty; // 2 m_difficulty (for arenas: arena slot) //char* areaTriggerText[16]; // 3-18 m_message_lang (text showed when transfer to map failed) - //uint32 textFlags; // 19 + //uint32 textFlags; // 19 uint32 resetTime; // 20 m_raidDuration in secs, 0 if no fixed reset time uint32 maxPlayers; // 21 m_maxPlayers some heroic versions have 0 when expected same amount as in normal version //char* difficultyString; // 22 m_difficultystring @@ -1665,7 +1665,7 @@ struct SpellRangeEntry { uint32 ID; // 0 m_ID float minRange; // 1 m_rangeMin[2] - float minRangeFriendly; // 2 + float minRangeFriendly; // 2 float maxRange; // 3 m_rangeMax[2] float maxRangeFriendly; // 4 //uint32 Flags; // 5 m_flags diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 1c34f00..664cf58 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -3413,7 +3413,7 @@ void ObjectMgr::LoadArenaTeams() // 0 1 2 3 4 5 QueryResult *result = CharacterDatabase.Query( "SELECT arena_team.arenateamid,name,captainguid,type,BackgroundColor,EmblemStyle," - // 6 7 8 9 10 11 12 13 14 + // 6 7 8 9 10 11 12 13 14 "EmblemColor,BorderStyle,BorderColor, rating,games_week,wins_week,games_season,wins_season,rank " "FROM arena_team LEFT JOIN arena_team_stats ON arena_team.arenateamid = arena_team_stats.arenateamid ORDER BY arena_team.arenateamid ASC" ); diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 9fec6ca..cf96659 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -10783,7 +10783,7 @@ public: { MaNGOS::PlayerRelocationNotifier notify((Player&)m_owner); Cell::VisitAllObjects(&m_owner,notify,radius); - } + } else //if(m_owner.GetTypeId() == TYPEID_UNIT) { MaNGOS::CreatureRelocationNotifier notify((Creature&)m_owner); diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in index cf73e54..2dd6002 100644 --- a/src/mangosd/mangosd.conf.dist.in +++ b/src/mangosd/mangosd.conf.dist.in @@ -37,13 +37,13 @@ ConfVersion=2010100901 # hostname;port;username;password;database # .;/path/to/unix_socket/DIRECTORY or . for default path;username;password;database - use Unix sockets at Unix/Linux # -# LoginDatabaseConnections -# WorldDatabaseConnections -# CharacterDatabaseConnections -# Amount of connections to database which will be used for SELECT queries. Maximum 16 connections per database. -# Please, note, for data consistency only one connection for each database is used for transactions and async SELECTs. -# So formula to find out how many connections will be established: X = ¹_connections + 1 -# Default: 1 connection for SELECT statements +# LoginDatabaseConnections +# WorldDatabaseConnections +# CharacterDatabaseConnections +# Amount of connections to database which will be used for SELECT queries. Maximum 16 connections per database. +# Please, note, for data consistency only one connection for each database is used for transactions and async SELECTs. +# So formula to find out how many connections will be established: X = ¹_connections + 1 +# Default: 1 connection for SELECT statements # # MaxPingTime # Settings for maximum database-ping interval (minutes between pings) diff --git a/src/shared/Database/DatabaseImpl.h b/src/shared/Database/DatabaseImpl.h index 963b151..60b526a 100644 --- a/src/shared/Database/DatabaseImpl.h +++ b/src/shared/Database/DatabaseImpl.h @@ -22,7 +22,7 @@ /// Function body definitions for the template function members of the Database class #define ASYNC_QUERY_BODY(sql) if (!sql || !m_pResultQueue) return false; -#define ASYNC_DELAYHOLDER_BODY(holder) if (!holder || !m_pResultQueue) return false; +#define ASYNC_DELAYHOLDER_BODY(holder) if (!holder || !m_pResultQueue) return false; #define ASYNC_PQUERY_BODY(format, szQuery) \\ if(!format) return false; \\ diff --git a/src/shared/Database/DatabasePostgre.cpp b/src/shared/Database/DatabasePostgre.cpp index 55cdb81..da5efea 100644 --- a/src/shared/Database/DatabasePostgre.cpp +++ b/src/shared/Database/DatabasePostgre.cpp @@ -226,7 +226,7 @@ bool PostgreSQLConnection::CommitTransaction() } bool PostgreSQLConnection::RollbackTransaction() -{ +{ return _TransactionCmd("ROLLBACK"); }
  5. patch link is dead, need new one would like testing it.
  6. After a long time github updated the Issue system completly and now there is the possibilty to have the same (and i think more) functionality than we had already on the lighthouse tracker https://github.com/blog/831-issues-2-0-the-next-generation Maybe we can think of it since most of us have a github account and the rest of core mods and or 3rd party tools can stay at the forum but also with an issue tracker for the testers of the mods. I would like to hear if mangos maybe can think of it
  7. just reinstall git, maybe with a clean deinstall and make sure to add either the points at the installation "Git Bash here" usw. or to install the git cheetah ext also available at the installation. Maybe a better description is needed cause C./ == C:/ ^^ first make sure you are in the right folder with git bash, i dunno how you open git bash now. a "special" way is just another way to get it working. _IF_ you added git bash to your PATH (win32 related) then you can simply "Windowskey + R" --> "cmd" then you got a cmd which is targeted to your desktop by default. Then you can just type "git" and you then you will be in the git shell then you can cd to your folder you would like. _IF_ not then go to your installed programs (C:/Program Files [German: C:/Programme]) and there go to your git (C:\\Program Files\\Git). There you can open a git bash via the symbolic link, also you can add it at your desktop. if you open it in the git folder oder somewhere else with the symbolic link you will see : ~ as your target. This is your own users folder and you just have to cd to your folders. Also with direct cds your are maybe faster cd "/c/Windows/system/"
  8. wooooow many questions FOr the updates of udb first you got a clean udb in your database, this is the big file 77mb if i think right i see at your screen A once you have a complete db you just have to apply the updates of the packs you download at the mangos db, which vers. you got you can see in your db_version. There is written which UDB Pack you got and just apply the next one, one by one, how to do that i don't know for SQLyog. Some patches are named with _character_ these must ofc into the character database but there is no need to apply the mangos/sql/updates/*.sql since udb update this automatically. Just be careful to get the same version of db and core since udb isn't updating their database that often.
  9. Hi all, some rouges at my server did say that they got some probs with their energyregeneration. It seems as the reg stop when they got +2 Energy probably from this talent, although noone can see this prob, just the player himself. maybe someone could agree with this. I don't know how to deal with it. Also the energyreg from the cats should be a little low, but i can't decide that since i don't play a cat. ^^ Furthermore there is no problem i can see with the reg. at all so... dunno what to do <.<
  10. today i got a weird crashlog Core was generated by `./mangosd'. Program terminated with signal 11, Segmentation fault. [New process 11652] [New process 11656] [New process 11655] [New process 11654] [New process 11653] [New process 11647] [New process 11650] [New process 11649] [New process 11648] #0 0x0000000000a66e9e in NGrid<8u, Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeList<Camera, TypeNull> > > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > >::isGridObjectDataLoaded (this=0xfdec00035005f110) at /home/mangos_git/src/framework/GameSystem/NGrid.h:121 121 bool isGridObjectDataLoaded() const { return i_GridObjectDataLoaded; } #0 0x0000000000a66e9e in NGrid<8u, Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeList<Camera, TypeNull> > > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > >::isGridObjectDataLoaded (this=0xfdec00035005f110) at /home/mangos_git/src/framework/GameSystem/NGrid.h:121 No locals. #1 0x0000000000a6c97d in Map::isGridObjectDataLoaded (this=0x124a0000, x=31, y=36) at /home/mangos_git/src/game/Map.h:286 No locals. #2 0x0000000000a59ead in Map::loaded (this=0x124a0000, p=@0x4289ea60) at /home/mangos_git/src/game/Map.cpp:454 No locals. #3 0x0000000000a5e182 in Map::MessageBroadcast (this=0x124a0000, obj=0x7fd71b20e080, msg=0x4289eaf0) at /home/mangos_git/src/game/Map.cpp:400 p = {x_coord = 251, y_coord = 290} cell = {data = {Part = {grid_x = 31, grid_y = 36, cell_x = 3, cell_y = 2, nocreate = 1, reserved = 0}, All = 17316127}} post_man = {i_phaseMask = 1116334672, i_message = 0xb} message = {i_visitor = @0x4289ea50} #4 0x0000000000adaa96 in WorldObject::SendMessageToSet (this=0x7fd71b20e080, data=0x4289eaf0) at /home/mangos_git/src/game/Object.cpp:1659 No locals. #5 0x0000000000b5a801 in Unit::SendThreatRemove (this=0x7fd71b20e080, pHostileReference=0x7fd71f21b340) at /home/mangos_git/src/game/Unit.cpp:12423 data = {<ByteBuffer> = {static DEFAULT_SIZE = 4096, _rpos = 0, _wpos = 11, _storage = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = { _M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>}, _M_start = 0x7fd7191660b0 "ù\\004í5\\016@ñ\\aS\\210\\003", _M_finish = 0x7fd7191660bb "", _M_end_of_storage = 0x7fd7191660c0 "àR\\026\\031×\\177"}}, <No data fields>}}, m_opcode = 1156} #6 0x0000000000a8038f in ThreatManager::processThreatEvent ( this=0x7fd71b20fb70, threatRefStatusChangeEvent=0x4289ebb0) at /home/mangos_git/src/game/ThreatManager.cpp:539 hostileReference = (HostileReference *) 0x7fd71f21b340 #7 0x0000000000a8050c in HostileReference::fireStatusChanged ( this=0x7fd71f21b340, pThreatRefStatusChangeEvent=@0x4289ebb0) at /home/mangos_git/src/game/ThreatManager.cpp:97 No locals. #8 0x0000000000a805f2 in HostileReference::setOnlineOfflineState ( this=0x7fd71f21b340, pIsOnline=false) at /home/mangos_git/src/game/ThreatManager.cpp:172 event = {<UnitBaseEvent> = {iType = 1}, iHostileReference = 0x7fd71f21b340, {iFValue = 68.9606934, iIValue = 1116335072, iBValue = 224}, iThreatManager = 0x7fd71b20fb70} #9 0x000000000092095c in HostileRefManager::setOnlineOfflineState ( this=0xa119b38, pIsOnline=false) at /home/mangos_git/src/game/HostileRefManager.cpp:81 ref = (class HostileReference *) 0x7fd71f21b340 #10 0x0000000000b7cc91 in Unit::CleanupsBeforeDelete (this=0xa118000) at /home/mangos_git/src/game/Unit.cpp:10954 No locals. #11 0x00000000008b4192 in Player::CleanupsBeforeDelete (this=0xa118000) at /home/mangos_git/src/game/Player.cpp:639 No locals. #12 0x0000000000a5d880 in Map::Remove (this=0x1d08000, player=0xa118000, remove=true) at /home/mangos_git/src/game/Map.cpp:594 p = {x_coord = 420896953, y_coord = 0} cell = {data = {Part = {grid_x = 32, grid_y = 54, cell_x = 50, cell_y = 27, nocreate = 0, reserved = 8}, All = 275721632}} grid = (NGridType *) 0x7fd729f881c0 __FUNCTION__ = "Remove" __PRETTY_FUNCTION__ = "virtual void Map::Remove(Player*, bool)" #13 0x0000000000b245ab in WorldSession::LogoutPlayer (this=0x7fd729fefc80, Save=true) at /home/mangos_git/src/game/WorldSession.cpp:483 _map = (class Map *) 0x1d08000 data = {<ByteBuffer> = {static DEFAULT_SIZE = 4096, _rpos = 896, _wpos = 1116335424, _storage = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = { _M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>}, _M_start = 0x7fd719b8d600 "", _M_finish = 0x7fd719b8d600 "", _M_end_of_storage = 0x4289ed90 "°í\\211B"}}, <No data fields>}}, m_opcode = 13136} #14 0x0000000000b24c96 in WorldSession::Update (this=0x7fd729fefc80, diff=46, updater=@0x4289efb0) at /home/mangos_git/src/game/WorldSession.cpp:316 currTime = 1298426240 packet = (WorldPacket *) 0x7fd729fefc80 #15 0x0000000000928bc1 in World::UpdateSessions (this=0x7fd75caa7900, diff=46) at /home/mangos_git/src/game/World.cpp:1902 pSession = (WorldSession *) 0x7fd729fefc80 updater = {<PacketFilter> = {_vptr.PacketFilter = 0xde5cb0, m_pSession = 0x7fd729fefc80}, <No data fields>} itr = {<std::tr1::__detail::_Hashtable_iterator_base<std::pair<const unsigned int, WorldSession*>, false>> = {_M_cur_node = 0x7fd71a96ee00, _M_cur_bucket = 0x7fd71450e150}, <No data fields>} next = {<std::tr1::__detail::_Hashtable_iterator_base<std::pair<const unsigned int, WorldSession*>, false>> = {_M_cur_node = 0x7fd729808a60, _M_cur_bucket = 0x7fd71450e198}, <No data fields>} sess = (WorldSession *) 0xa111b #16 0x0000000000928e95 in World::Update (this=0x7fd75caa7900, diff=46) at /home/mangos_git/src/game/World.cpp:1446 No locals. #17 0x000000000083a8f6 in WorldRunnable::run (this=0x7fd72a887300) at /home/mangos_git/src/mangosd/WorldRunnable.cpp:60 diff = 46 realCurrTime = 46895727 realPrevTime = 46895681 prevSleepTime = 46 #18 0x0000000000ce2ef6 in ACE_Based::Thread::ThreadTask (param=0x7fd72a887300) at /home/mangos_git/src/shared/Threading.cpp:187 _task = (class ACE_Based::Runnable *) 0x7fd72a887300 #19 0x00007fd75a911fc7 in start_thread () from /lib/libpthread.so.0 No symbol table info available. #20 0x00007fd75a68764d in clone () from /lib/libc.so.6 No symbol table info available. #21 0x0000000000000000 in ?? () No symbol table info available.
  11. does someone know if --with-debug-info is active at normal build or must i compile a debug build for getting my gdb working for crashlogs?
  12. tested cmake on windows although VS support is also available i would like to work with Code::Blocks. But very bad a con for cmake on windows CMake Error at CMakeLists.txt:39 (message): Under Windows other compiler than Microsoft Visual Studio are not supported. Configuring incomplete, errors occurred! Tested with codeblocks+mingw installation, cmake didn't find neither the mingw nor the codeblocks executable although i have all installed on the default way. Also tested mingw standalone, same there. Btw. have selected it with the Advanced option checked and in the end there was everytime this error at top
  13. try this: http://forums.techarena.in/tips-tweaks/1124298.htm#post4247338 I think the second step will also change the name of your users path. And you also msut restart the pc after editing the registry and don't forget do backup the registry if something goes wrong.
  14. I followed the advice of kero and reopen a thread here So it's a bug that should be fixxed sry that i now opened two threads with the same content. Maybe the other Thread in 'Core Modifications' could be closed.
  15. Hi, I searched a bit through the mangos forum but didn't find any thread according to my problem. Because i want that some specific Spells should stack such as http://www.wowhead.com/spell=8921 or http://www.wowhead.com/spell=5570 just as an example. I got several Bug posts on my Server with this problem but i didn't find a solution for this. So my question is if there is somewhere a mod for this or if anyone already handled this.
  16. ok so to your last post could thank you, ok then so all is fine maybe there is just a case where we got to much time differences between posting and thanking. nice to know.
  17. Rev. 11160 http://www.wowhead.com/spell=56815 since the latest changes i got the following problem. Rune Strike should be castable after evading or a parry of an attack. And this is the prob it doesn't work like this. after several tries of evading an attack i am not able to cast this Spell. I don't think it is related to my custom changes to mangos core so i just want to ask if some can agree with me
  18. HI folks, just want to know what is with the "Thank you" feature of our forum here? i can thank myself but thats it, so for me i cant thank any dev or 'normal' user? (Edit: ofcourse there is now message that i thanked myself but the link for thanking is there) Just want to know if it is on purpose or a bug? ^^
  19. Core was generated by `./mangos-worldd'. Program terminated with signal 11, Segmentation fault. [New process 1285] [New process 1296] [New process 1295] [New process 1294] [New process 1293] [New process 1292] [New process 1291] [New process 1290] [New process 1289] [New process 1288] [New process 1287] [New process 1286] [New process 1272] [New process 1275] [New process 1274] [New process 1273] #0 0x0000000000641842 in Map::loaded (this=0x13f7c000, p=@0x43585a00) at ../../../src/game/Map.h:286 286 bool isGridObjectDataLoaded(uint32 x, uint32 y) const { return getNGrid(x,y)->isGridObjectDataLoaded(); } #0 0x0000000000641842 in Map::loaded (this=0x13f7c000, p=@0x43585a00) at ../../../src/game/Map.h:286 No locals. #1 0x00000000006502d7 in Map::MessageBroadcast (this=0x13f7c000, obj=0x7fd2bc5d6080, msg=0x43585aa0) at ../../../src/game/Map.cpp:400 cell = {data = {Part = {grid_x = 31, grid_y = 36, cell_x = 4, cell_y = 0, nocreate = 1, reserved = 0}, All = 16795935}} post_man = {i_phaseMask = 0, i_message = 0x4ce2a363} message = {i_visitor = @0x0} #2 0x00000000007db25a in Unit::SendThreatRemove (this=0x7fd2bc5d6080, pHostileReference=0x7fd2bab643c0) at ../../../src/game/Unit.cpp:12280 data = {<ByteBuffer> = {static DEFAULT_SIZE = 4096, _rpos = 0, _wpos = 11, _storage = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = { _M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>}, _M_start = 0x7fd2c6005760 "ù\\006·\\024\\016@ñ\\aíÁ\\003þ", _M_finish = 0x7fd2c600576b "þ", _M_end_of_storage = 0x7fd2c6005770 "r\\b"}}, <No data fields>}}, m_opcode = 1156} #3 0x00000000007c6379 in ThreatManager::processThreatEvent ( this=0x7fd2bc5d7aa0, threatRefStatusChangeEvent=<value optimized out>) at ../../../src/game/ThreatManager.cpp:539 hostileReference = (HostileReference *) 0x7fd2bab643c0 #4 0x00000000007c662e in HostileReference::setOnlineOfflineState ( this=0x7fd2bab643c0, pIsOnline=<value optimized out>) at ../../../src/game/ThreatManager.cpp:172 event = {<UnitBaseEvent> = {iType = 1}, iHostileReference = 0x7fd2bab643c0, {iFValue = 0, iIValue = 0, iBValue = false}, iThreatManager = 0x7fd2bc5d7aa0} #5 0x00000000005f1f63 in HostileRefManager::setOnlineOfflineState ( this=<value optimized out>, pIsOnline=<value optimized out>) at ../../../src/game/HostileRefManager.cpp:81 ref = (class HostileReference *) 0x7fd2bab643c0 #6 0x0000000000802426 in FlightPathMovementGenerator::Reset ( this=0x7fd2bd759d00, player=@0x10d3c000) at ../../../src/game/WaypointMovementGenerator.cpp:364 traveller = {i_traveller = @0x7fd2e66b9a68} #7 0x0000000000667564 in MotionMaster::Mutate (this=0x10d3d940, m=0x7fd2bd759d00) at ../../../src/game/MotionMaster.cpp:425 No locals. #8 0x0000000000668c95 in MotionMaster::MoveTaxiFlight (this=0x10d3d940, path=21, pathnode=0) at ../../../src/game/MotionMaster.cpp:384 No locals. #9 0x000000000070a6c0 in Player::ActivateTaxiPathTo (this=0x10d3c000, nodes=<value optimized out>, npc=0x7fd2cffd0100, spellid=0) at ../../../src/game/Player.cpp:18861 sourcenode = 10 node = <value optimized out> sourcepath = 21 totalcost = 105 prevnode = <value optimized out> lastnode = 11 mount_display_id = 1566 money = <value optimized out> data = {<ByteBuffer> = {static DEFAULT_SIZE = 4096, _rpos = 0, _wpos = 4, _storage = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = { _M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>}, _M_start = 0x7fd2d1655fa0 "", _M_finish = 0x7fd2d1655fa4 "Ò\\177", _M_end_of_storage = 0x7fd2d1655fa4 "Ò\\177"}}, <No data fields>}}, m_opcode = 430} #10 0x00000000007bea67 in WorldSession::HandleActivateTaxiOpcode ( this=0x7fd2c2f37ac0, recv_data=<value optimized out>) at ../../../src/game/TaxiHandler.cpp:276 guid = {m_guid = 17379390999368841240} nodes = {<std::_Vector_base<unsigned int, std::allocator<unsigned int> >> = { _M_impl = {<std::allocator<unsigned int>> = {<__gnu_cxx::new_allocator<unsigned int>> = {<No data fields>}, <No data fields>}, _M_start = 0x7fd2d1654a28, _M_finish = 0x7fd2d1654a30, _M_end_of_storage = 0x7fd2d1654a30}}, <No data fields>} npc = (class Creature *) 0x10100002bff03b2 #11 0x0000000000810f61 in WorldSession::ExecuteOpcode (this=0x7fd2c2f37ac0, opHandle=<value optimized out>, packet=0x7fd2cd30cbb0) at ../../../src/game/WorldSession.cpp:929 No locals. #12 0x00000000008131fd in WorldSession::Update (this=0x7fd2c2f37ac0, diff=<value optimized out>, updater=@0x43585f90) at ../../../src/game/WorldSession.cpp:261 opHandle = (const OpcodeHandler &) @0x1f: <error reading variable> packet = (WorldPacket *) 0x7fd2cd30cbb0 #13 0x000000000064d445 in Map::Update (this=0x37e4000, t_diff=@0x4358606c) at ../../../src/game/Map.cpp:468 pSession = (WorldSession *) 0x13f7c000 updater = {<PacketFilter> = {_vptr.PacketFilter = 0x9ae930, m_pSession = 0x7fd2c2f37ac0}, <No data fields>} plr = <value optimized out> updater = {i_timeDiff = 37} #14 0x000000000065c66b in MapManager::Update (this=0x7fd2d52a0b80, diff=<value optimized out>) at ../../../src/game/MapManager.cpp:267 No locals. #15 0x000000000080d70d in World::Update (this=0x7fd3079e7900, diff=37) at ../../../src/game/World.cpp:1493 No locals. #16 0x000000000052051d in WorldRunnable::run (this=<value optimized out>) at ../../../src/mangosd/WorldRunnable.cpp:60 diff = 37 prevSleepTime = 37 #17 0x00000000008d5fca in ACE_Based::Thread::ThreadTask (param=0x13f7c000) at ../../../src/shared/Threading.cpp:187 No locals. #18 0x00007fd305b93fc7 in start_thread () from /lib/libpthread.so.0 No symbol table info available. #19 0x00007fd30516364d in clone () from /lib/libc.so.6 No symbol table info available. #20 0x0000000000000000 in ?? () No symbol table info available. Any Idea? Found this Post Yes, but solved with: diff --git a/src/game/ThreatManager.cpp b/src/game/ThreatManager.cpp index 3f506fe..1f2cc33 100644 --- a/src/game/ThreatManager.cpp +++ b/src/game/ThreatManager.cpp @@ -512,7 +512,7 @@ void ThreatManager::ProcessThreatEvent(ThreatRefStatusChangeEvent* threatRefStat setCurrentVictim(NULL); setDirty(true); } - iOwner->SendThreatRemove(hostileReference); + //iOwner->SendThreatRemove(hostileReference); iThreatContainer.remove(hostileReference); iUpdateNeed = true; iThreatOfflineContainer.addReference(hostileReference); No more grid crashes, problem come from rev 9038 Best regards Maybe related to it but after such a long time it wasn't fixxed? o.0
  20. Yeah this was my prob thought this coeff is giving a bonus without looking at the spellpower how i said was just a wrong thought.
  21. clarified myself <.< http://www.wowwiki.com/Spell_power_coefficient Here is an explanation how this mechanic work for all who don't know ^^ ok my problem is solved so all fine ^^ was just a missunderstanding how this thing work anyway
  22. This is just a patch extracted from rsa. There is currently no branch where it is developed further. Someone must rewrite it.
  23. as far as i know there are different flight points with some flight models that are corrupted and this was for me the reason why i swum around ofcourse between the flight points.
  24. ok yeah got it, so this is clear i will looking more into the code. btw. i tested know on my local server with clean core the spell 'Wrath' and 'Healing Touch' Both got just a direct_bonus but this just seem to do nothing. there was an entry for wrath with 0.5714 thought, i just tested it out decreasing it to 0.0001, did both reloaded spell_bonus_data ingame and restarted server but i didn't see any difference. Same with an increasing value to 5000 or just to 5 or 10. Tested also just rank 1 which is given in the db and also rank 12 (probably that isn't related cause this is handled in core with different ranks). So the same thing with Healing Touch no effect i could see.... Would like to hear if i make something wrong or maybe i've got something wrong in my mind *Tested on clean mangos with psmdb *Tested also on public server of me with some patches and so on but no difference
  25. Hi folks, after there are many problems with the balance and dps at my server i just searched for reasons and found this table 'spell_bonus_data'.... Now my question is : How this this table work. i found after searching a while in the code some functions for reading this table no prob and then going further to calculating with the values provided in the table: int32 Unit::SpellBonusWithCoeffs(SpellEntry const *spellProto, int32 total, int32 benefit, int32 ap_benefit, DamageEffectType damagetype, bool donePart, float defCoeffMod) { // Distribute Damage over multiple effects, reduce by AoE float coeff; // Not apply this to creature casted spells if (GetTypeId()==TYPEID_UNIT && !((Creature*)this)->IsPet()) coeff = 1.0f; // Check for table values else if (SpellBonusEntry const* bonus = sSpellMgr.GetSpellBonusData(spellProto->Id)) { coeff = damagetype == DOT ? bonus->dot_damage : bonus->direct_damage; // apply ap bonus at done part calculation only (it flat total mod so common with taken) if (donePart && (bonus->ap_bonus || bonus->ap_dot_bonus)) { float ap_bonus = damagetype == DOT ? bonus->ap_dot_bonus : bonus->ap_bonus; // Impurity if (GetTypeId() == TYPEID_PLAYER && spellProto->SpellFamilyName == SPELLFAMILY_DEATHKNIGHT) { if (SpellEntry const* spell = ((Player*)this)->GetKnownTalentRankById(2005)) ap_bonus += ((spell->CalculateSimpleValue(EFFECT_INDEX_0) * ap_bonus) / 100.0f); } total += int32(ap_bonus * (GetTotalAttackPowerValue(IsSpellRequiresRangedAP(spellProto) ? RANGED_ATTACK : BASE_ATTACK) + ap_benefit)); } } // Default calculation else if (benefit) coeff = CalculateDefaultCoefficient(spellProto, damagetype) * defCoeffMod; if (benefit) { float LvlPenalty = CalculateLevelPenalty(spellProto); // Spellmod SpellDamage if(Player* modOwner = GetSpellModOwner()) { coeff *= 100.0f; modOwner->ApplySpellMod(spellProto->Id,SPELLMOD_SPELL_BONUS_DAMAGE, coeff); coeff /= 100.0f; } total += int32(benefit * coeff * LvlPenalty); } return total; }; I think this is a key part of this apply of the bonus, but someway this is confusing: else if (SpellBonusEntry const* bonus = sSpellMgr.GetSpellBonusData(spellProto->Id)) { /*>>>>>*/coeff/*<<<<<<*/ = damagetype == DOT ? bonus->dot_damage : bonus->direct_damage; // apply ap bonus at done part calculation only (it flat total mod so common with taken) if (donePart && (bonus->ap_bonus || bonus->ap_dot_bonus)) { float ap_bonus = damagetype == DOT ? bonus->ap_dot_bonus : bonus->ap_bonus; // Impurity if (GetTypeId() == TYPEID_PLAYER && spellProto->SpellFamilyName == SPELLFAMILY_DEATHKNIGHT) { if (SpellEntry const* spell = ((Player*)this)->GetKnownTalentRankById(2005)) ap_bonus += ((spell->CalculateSimpleValue(EFFECT_INDEX_0) * ap_bonus) / 100.0f); } total += int32(ap_bonus * (GetTotalAttackPowerValue(IsSpellRequiresRangedAP(spellProto) ? RANGED_ATTACK : BASE_ATTACK) + ap_benefit)); this /*>>>>>*/coeff/*<<<<<<*/ isn't used anymore in this tree... also i wanna know more of the calculating if this. I see many many functions in there and also many i already read but i don't have a clue how this spell_bonus_data work exactly.
×
×
  • 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