Commit Graph

8196 Commits

Author SHA1 Message Date
Anubisss
7e027310c3 Update world.sql, forgot in rab603c8f4a.
--HG--
branch : trunk
2010-05-14 22:05:19 +02:00
Anubisss
6851fae8e2 Fix Glyph of Preparation.
Patch based on microbius51's patch.
Closes issue #1371.

--HG--
branch : trunk
2010-05-14 21:42:55 +02:00
Anubisss
5c596f32d4 Generate an error message when forgot to allocate memory for a script.
This message is useful to find don't allocated scripts, like in rev r5915a3a871.

--HG--
branch : trunk
2010-05-14 20:07:45 +02:00
Anubisss
486d66e94b Add ; to end of a SQL query in a SQL file. Patch by hunteee.
--HG--
branch : trunk
2010-05-14 19:27:38 +02:00
Anubisss
a7295810e3 Fix Glyph of Life Tap.
SpellMgr.cpp part of the code by Karolis.Rudzevicius, thanks for it.
Fixes issue #1440.

--HG--
branch : trunk
2010-05-14 18:02:31 +02:00
Machiavelli
3c9fc9b9e3 Fix Linux compile
--HG--
branch : trunk
2010-05-14 15:12:50 +02:00
Anubisss
2425edfdab Fix Glyph of Shred.
--HG--
branch : trunk
2010-05-14 14:32:43 +02:00
Machiavelli
98a5c09af0 Add config option SessionAddDelay to replace the hard coded 10ms default Networkthread sleep time after WorldSocket::HandleAuthSession calls and adding the session to the world session map.
--HG--
branch : trunk
2010-05-14 00:50:26 +02:00
Machiavelli
d390ff46c2 Make ObjectMgr::GetGuildByName and ObjectMgr::GetArenaTeamByName searches case insensitive.
Fixes issue #307.
Credits to Loread

--HG--
branch : trunk
2010-05-13 20:04:36 +02:00
Xanadu
5bf4af15dc Prune some deadwood.
--HG--
branch : trunk
2010-05-13 19:28:23 +02:00
click
c8e648e18e Make questgivers automatically inform of quests in their gossipmenu when available - removes need of extra gossip option to show quests
Fix by Liberate (made for Malcrom so he stops complaining)

--HG--
branch : trunk
2010-05-13 19:06:20 +02:00
Machiavelli
f286f583fc Prevent SQL injection in Player::_SaveEquipmentSets()
--HG--
branch : trunk
2010-05-13 18:25:32 +02:00
Machiavelli
bf9d8f9423 Implement enchantments for ITEM_MOD_SPELL_PENETRATION and ITEM_MOD_BLOCK_VALUE.
Inspired by patch provided by Metthal
Closes issue #1766

--HG--
branch : trunk
2010-05-13 18:01:55 +02:00
Xanadu
a891692d05 Fixed spell casting upon vehicle summoning.
--HG--
branch : trunk
2010-05-13 17:57:59 +02:00
Machiavelli
144a146810 Fix crash introduced in 4610bbf047.
- Update SqlAsyncTask´s destructor, properly NULLpoint SqlOperation* m_op so other threads can deal with it accordingly.
- Don´t keep NULL´d elements in transaction queues, remove them instead.

This now means you should be able to run a stable server with > 2 MapUpdate threads. Please leave feedback.

Courtesy of click and myself.

--HG--
branch : trunk
2010-05-13 17:24:54 +02:00
_manuel_
28bbc233d1 Added missing newscript = new Script; , my fault. Thanks to Anubisss.
--HG--
branch : trunk
2010-05-13 11:36:18 -03:00
_manuel_
899736d89c Changes in scripts for quest chain The Amphitheater of Anguish:
- Added blizzlike content, like texts.
- Corrected some spells and timers.
- As i saw in offi can be more than 1 player doing different parts of the chain at the same time.
- Added code to prevent the npc gets out of the ring.
- Added support for The Amphitheater of Anguish: From Beyond.

--HG--
branch : trunk
2010-05-13 11:09:10 -03:00
Anubisss
852254d258 Fix a duplicated script: go_gilded_brazier.
Remove it from one file and also merge the 2 scripts in one file.

The error message:
ScriptName: 'go_gilded_brazier' already assigned with the same ScriptName, so the script can't work.

--HG--
branch : trunk
2010-05-13 14:29:06 +02:00
Machiavelli
5e48be89d5 Fix a crash in SqlAsyncTask::call caused by the fact that the SQLOperation to be called was a NULL pointer.
The crash was mostly noticable on servers with relatively high MapUpdate Threads, since the window between SqlAsyncTask::call()´s NULLpointer check for m_op and the usage of this pointer was larger when more map threads are calling Database::CommitTransaction()´s and NULLing this pointer.
Fixes crash specified in comment #24 in issue #1259, and most likely will affect other crashes specified there as well.
Courtesy of click and myself, and our lengthy and deep brainstorming session.

--HG--
branch : trunk
2010-05-13 14:22:00 +02:00
Anubisss
10bf921a65 Generate an error message when core tries to assign a script's ScriptName which is already assigned.
This means if that happened the core override the older script.
As a result, the earlier one doesn't work and can't deallocate so generates memory leak.

This commit also fixes memory leaks caused by that.

Valgrind log:

==4753== 354 (312 direct, 42 indirect) bytes in 1 blocks are definitely lost in loss record 1,194 of 1,218
==4753==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==4753==    by 0x1039D85: AddSC_go_scripts() (go_scripts.cpp:1015)
==4753==    by 0xDC196F: AddScripts() (ScriptLoader.cpp:534)
==4753==    by 0xC19943: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==4753==    by 0xD1CCAE: World::SetInitialWorldSettings() (World.cpp:1608)
==4753==    by 0x9100A6: Master::Run() (Master.cpp:234)
==4753==    by 0x90F5D6: main (Main.cpp:146)

--HG--
branch : trunk
2010-05-13 14:15:11 +02:00
Anubisss
e7faef7e76 Fix a memleak in AddSC_borean_tundra().
Log:

==31592== 312 bytes in 1 blocks are definitely lost in loss record 423 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xFC12AF: AddSC_borean_tundra() (borean_tundra.cpp:2408)
==31592==    by 0xDC0BF0: AddScripts() (ScriptLoader.cpp:917)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)

--HG--
branch : trunk
2010-05-13 00:52:04 +02:00
Anubisss
46a14891c0 Forget to call clear() for a vector from my previous commit.
--HG--
branch : trunk
2010-05-13 00:47:28 +02:00
Anubisss
cdb7b3227b Call WaypointMgr's Free() in its destructor.
Deallocate memory in Free() which allocated by WaypointMgr.

This fixes memory leaks caused by waypoints.

Valgrind log:

==31592== 2,203,488 (59,400 direct, 2,144,088 indirect) bytes in 2,475 blocks are definitely lost in loss record 1,230 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xD0EC23: WaypointStore::Load() (WaypointManager.cpp:70)
==31592==    by 0xD1B55D: World::SetInitialWorldSettings() (World.cpp:1565)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 160 bytes in 5 blocks are possibly lost in loss record 10 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xD0EC0D: WaypointStore::Load() (WaypointManager.cpp:67)
==31592==    by 0xD1B55D: World::SetInitialWorldSettings() (World.cpp:1565)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 384 bytes in 2 blocks are possibly lost in loss record 285 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xD0F2D4: __gnu_cxx::new_allocator<WaypointData*>::allocate(unsigned long, void const*) (new_allocator.h:92)
==31592==    by 0xD0F303: std::_Vector_base<WaypointData*, std::allocator<WaypointData*> >::_M_allocate(unsigned long) (stl_vector.h:144)
==31592==    by 0xD0F87B: std::vector<WaypointData*, std::allocator<WaypointData*> >::_M_insert_aux(__gnu_cxx::__normal_iterator<WaypointData**, std::vector<WaypointData*, std::allocator<WaypointData*> > >, WaypointData* const&) (vector.tcc:308)
==31592==    by 0xD0F9F7: std::vector<WaypointData*, std::allocator<WaypointData*> >::push_back(WaypointData* const&) (stl_vector.h:694)
==31592==    by 0xD0ED0B: WaypointStore::Load() (WaypointManager.cpp:89)
==31592==    by 0xD1B55D: World::SetInitialWorldSettings() (World.cpp:1565)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)

--HG--
branch : trunk
2010-05-13 00:42:37 +02:00
Machiavelli
5d70f62c07 Global cooldown for players should never exceed 1,5 seconds. Fixes issue #1998
--HG--
branch : trunk
2010-05-13 00:37:43 +02:00
Spp
a3a8e6da2c Some warning fix
Tab to spaces
Remove trailing spaces

--HG--
branch : trunk
2010-05-13 00:15:21 +02:00
Anubisss
4a448eca37 Make WaypointMgr to singleton.
Move global waypoint_map variable to WaypointMgr's private variable.

--HG--
branch : trunk
2010-05-13 00:08:30 +02:00
Anubisss
8223af6576 Delete ALL scripts which not assigned instead of delete scripts which not assigned AND its ScriptName not contains the word "example", in Script::RegisterSelf().
So fixes memleaks in scripts which scriptname contains the "example" word AND not assigned(ScriptName column in DB) to an object.

This ones fixed: example_creature, example_escort, example_areatrigger, example_item, example_go_teleporter, example_gossip_codebox.

Some valgrind log: :)

==31592== 353 (312 direct, 41 indirect) bytes in 1 blocks are definitely lost in loss record 280 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFAC8A: AddSC_example_creature() (example_creature.cpp:286)
==31592==    by 0xDC047A: AddScripts() (ScriptLoader.cpp:523)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 351 (312 direct, 39 indirect) bytes in 1 blocks are definitely lost in loss record 281 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFB426: AddSC_example_escort() (example_escort.cpp:223)
==31592==    by 0xDC047F: AddScripts() (ScriptLoader.cpp:524)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 359 (312 direct, 47 indirect) bytes in 1 blocks are definitely lost in loss record 282 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFBCB6: AddSC_example_gossip_codebox() (example_gossip_codebox.cpp:93)
==31592==    by 0xDC0484: AddScripts() (ScriptLoader.cpp:525)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 358 (312 direct, 46 indirect) bytes in 1 blocks are definitely lost in loss record 283 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFC04B: AddSC_example_misc() (example_misc.cpp:65)
==31592==    by 0xDC0489: AddScripts() (ScriptLoader.cpp:526)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 356 (312 direct, 44 indirect) bytes in 1 blocks are definitely lost in loss record 501 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFBF96: AddSC_example_misc() (example_misc.cpp:55)
==31592==    by 0xDC0489: AddScripts() (ScriptLoader.cpp:526)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)
==31592==
==31592==
==31592== 349 (312 direct, 37 indirect) bytes in 1 blocks are definitely lost in loss record 1,209 of 1,232
==31592==    at 0x4C2626C: operator new(unsigned long) (vg_replace_malloc.c:230)
==31592==    by 0xEFBFDB: AddSC_example_misc() (example_misc.cpp:60)
==31592==    by 0xDC0489: AddScripts() (ScriptLoader.cpp:526)
==31592==    by 0xC183F3: ScriptMgr::ScriptsInit() (ScriptMgr.cpp:70)
==31592==    by 0xD1B75F: World::SetInitialWorldSettings() (World.cpp:1608)
==31592==    by 0x90F34E: Master::Run() (Master.cpp:234)
==31592==    by 0x90E87E: main (Main.cpp:146)

--HG--
branch : trunk
2010-05-12 23:30:41 +02:00
Machiavelli
7336157d7e Remove Non-Blizzlike hack for spell 25899 - Greater Blessing of Sanctuary. It now gives 10% strength increase as intended.
--HG--
branch : trunk
2010-05-12 23:18:03 +02:00
Anubisss
737ebb99f7 Delete an unused variable.
--HG--
branch : trunk
2010-05-12 22:37:03 +02:00
Machiavelli
118268bc9d Merge
--HG--
branch : trunk
2010-05-12 22:18:49 +02:00
Anubisss
02e0136867 Fix the bug that client can see incompatible realms in the RealmList.
--HG--
branch : trunk
2010-05-12 22:08:43 +02:00
Machiavelli
08effa0ae7 Replace some WorldSocket code with Derex´s code for MaNGOS to support packets > 64kb.
This get rid of the ¨queue¨ that only supported 1 packet and implement it properly. Meaning no ¨internal¨ packet loss obstructing the client/server I/O.
Apply Trinity code style where applicable.

--HG--
branch : trunk
2010-05-12 22:03:07 +02:00
Rat
8dfbb15b2a added Honorable Defender buff for Alterac Valley nodes + bosses + captains
--HG--
branch : trunk
2010-05-12 21:34:07 +02:00
teacher
8a60550d9d Added missing sql data to fulls.
Proper renaming and reformatting for some sql files.
Removed not-core-related data. You can find it in the usual place: http://trinitydatabase.org/index.php?/forum/122-core-related-db-content/

--HG--
branch : trunk
2010-05-12 20:18:04 +02:00
Rat
b88984f30a added Honorable Defender buff for Eye of the storm nodes
ignore one unknown area trigger near fel reaver graveyard

--HG--
branch : trunk
2010-05-12 08:48:21 +02:00
Rat
6f06008f6b make BG kill XP configable, default off
--HG--
branch : trunk
2010-05-12 07:53:13 +02:00
Rat
bfa0588fac typo :(
should olso fix linux compile

--HG--
branch : trunk
2010-05-12 07:32:04 +02:00
Rat
75c1364682 added Honorable Defender buff for Arathi Basin nodes
-players protecting their bases will gain +50% honor near the base

--HG--
branch : trunk
2010-05-12 00:23:00 +02:00
Rat
df6a39cebc give xp only in BattleGrounds and not in arenas
--HG--
branch : trunk
2010-05-11 21:48:03 +02:00
Rat
eae6f5c094 started implementing battleground experience system
-players gain xp by killing enemy players (event bonuses not added for now)
-player can switch xp gain on/off by talking to npc Slahtz or Behsten for a fee of 10golds
NOTE: turning off xp gain will turn off ALL xp gains from quests,monsters,pvp,etc

--HG--
branch : trunk
2010-05-11 21:42:39 +02:00
Machiavelli
bf9694a354 Spell custom attribute data for Northrend faction commendation badges (spells 61306,61308,61311,61312,69757). They now give proper reputation
--HG--
branch : trunk
2010-05-11 18:43:47 +02:00
Spp
19010df80f Force animprogress for GameObjects Type FishNode
Original patch by beberlescaraber

--HG--
branch : trunk
2010-05-10 12:48:35 +02:00
Machiavelli
758faad1ca Typo.
(Need more caffeine)

--HG--
branch : trunk
2010-05-10 21:38:05 +02:00
Machiavelli
4335d97f37 Fix typo that occured in the mess of exporting/stripping, my humble apologies.
--HG--
branch : trunk
2010-05-10 20:31:24 +02:00
Machiavelli
b468669ef7 Merge
Thanks to Aokromes for helping me test my previous commit

--HG--
branch : trunk
2010-05-10 19:50:05 +02:00
Machiavelli
d2f35a2045 Cleanup and optimization in realmd netcode.
- Get rid of some potential memory leaks and lingering connections issues.
- Code style cleanup where applicable.

Please give proper feedback and let me know how she fares.

--HG--
branch : trunk
2010-05-10 18:06:28 +02:00
click
5626c294e4 Remove double-included headers from script + remove whitespace. Closes issue 2091.
--HG--
branch : trunk
2010-05-10 16:48:39 +02:00
Brian
7957d06654 * Add SCRIPT_COMMAND_CLOSE_GOSSIP that can be used in gossip_scripts to force
* the gossip window to close when a given menu option is chosen.
* This is with all my love -- for Malcrom :P

--HG--
branch : trunk
2010-05-07 19:17:51 -06:00
click
608855f0a0 Stop drinking heavily and instead do things properly - fixes a typo from previous commit...
--HG--
branch : trunk
2010-05-10 14:14:07 +02:00
click
7817596a96 Fix the little messup from the previous commit (sorry!)
--HG--
branch : trunk
2010-05-10 14:08:53 +02:00