Commit Graph
100 Commits
Author SHA1 Message Date
click 5eb1802ef5 Fix typo - thanks menke
--HG--
branch : trunk
2010-08-22 17:15:45 +02:00
click 0e307c4b07 Core/SOAP: Fix semaphore locking on non-POSIX systems (thanks to menke/arrai)
--HG--
branch : trunk
2010-08-22 16:57:06 +02:00
click 5739c2efa9 Core: replace redirectional outStaticDebug with a copy of debug for future use and rewrite
--HG--
branch : trunk
2010-08-22 16:33:43 +02:00
John Holiver 6e7f11aa41 Typo from prev commit
--HG--
branch : trunk
2010-08-22 06:13:27 -03:00
John Holiver 3fb1c08d20 Core/Script/Spells: Trial of the Crusader
* Keep in mind that this is a WIP although is extremely playable as it is.
* Known bugs are writen at the header of each file.
* If u know how to correctly solve any of those bugs or found a new bug, please report and, if you may, provide a fix for us to review.
* I'd like to thank all Trinity Community (in special, Shauren, QAston, Bio, Josh), rsa from SD2 for providing the base, all the ppl that helped me test and review so many many times.
* I personally have been working on this code since TC was near rev 8000 so i will take a break from it to work on other stuff (specially cause most of the bugs i was unable to solve alone).
* I'd like to strongly encourage others to provide the improvements that this instance need to become perfect.
* FInally, this commit might have something missing... i'll recheck as soon as i wake up tomorrow morning.

--HG--
branch : trunk
2010-08-22 05:55:54 -03:00
azazel 2a130e07bf Scripts:
* Fix crash in boss_morogrim_tidewalker script (thanks Toni.Shocker). Close issue #3531
* Small cleanup of code for boss_morogrim_tidewalker (used enum instead of defines, removed warnings and obsolete code)

--HG--
branch : trunk
2010-08-22 13:27:22 +06:00
azazel b0086ce4fc Fix logic in SpellScript (thanks Toni.Shocker)
--HG--
branch : trunk
2010-08-22 13:04:10 +06:00
click 670964803f Core: Fix more warnings, add new function sLog.outStaticDebug() that replaces DEBUG_LOG
--HG--
branch : trunk
2010-08-22 01:57:04 +02:00
Spp a40cb46e61 Core: fix "comparison of unsigned expression < 0 is always false" warnings
--HG--
branch : trunk
2010-08-21 23:40:53 +02:00
Spp 572f7bbd1d Core: Remove "may be used uninitialized in this function", "unused parameter ‘xxx’" and "'xxx' defined but not used" warnings
--HG--
branch : trunk
2010-08-21 23:08:54 +02:00
Spp a136403dee Core: Remove "suggest parentheses around ‘&&’ within ‘||’" and "suggest parentheses around assignment used as truth value" warnings
--HG--
branch : trunk
2010-08-21 21:54:41 +02:00
Spp c15c605a11 Core: Remove "unused variable 'xxx'" warnings
--HG--
branch : trunk
2010-08-21 21:14:35 +02:00
Spp e7856a831c Core: Remove "enumeration value 'xxx' not handled in switch" warnings
--HG--
branch : trunk
2010-08-21 20:55:31 +02:00
QAston 77bd968c63 *Remove some unused containers from Spell class.
--HG--
branch : trunk
2010-08-21 21:00:06 +02:00
Spp c3343638cb Core: Remove lots warnings:
- All "'xxx' will be initialized after 'yyy' when initialized here"
- Some "unused variable"
- Some "enumeration value 'xxx' not handled in switch"

--HG--
branch : trunk
2010-08-21 20:08:47 +02:00
QAston 6714feb3ee *Add script hooks for SpellScript class - now you can use BeforeHit, OnHit, AfterHit hook lists.
--HG--
branch : trunk
2010-08-21 20:18:54 +02:00
click 3febdd7884 Core: Remove warning-ignores from Common.h, and fix a shitload of retarded warnings that was hidden by it - NO MORE HIDING IN CORE THANKYOU!
--HG--
branch : trunk
2010-08-21 19:40:05 +02:00
Shauren d7814e88d8 Scripts/Icecrown Citadel: Added Lady Deathwhisper script, huge thanks to wowgargamel for script parts, timers and sniffs
Core/Scripts: Added GetPhaseMask() method to EventMap

--HG--
branch : trunk
2010-08-21 11:09:58 +02:00
click 50789b0461 Core: Remove already defined FD_SETSIZE (picked up from Common.h)
--HG--
branch : trunk
2010-08-21 16:37:30 +02:00
click 7abd33951a Buildsystem: Enable warnings by default - warnings are ment to be noticed and fixed, not ignored
--HG--
branch : trunk
2010-08-21 14:03:47 +02:00
click ace057f1d7 Core/Build: Finalize the non-PCH building - now compiles on all platforms in nonPCH-mode, and in PCH (unless we've fucked up somewhere)
--HG--
branch : trunk
2010-08-21 11:36:52 +02:00
click d16656bb5d Core/Guild: Compile properly on *nix + fix so we don't delete the same item twice on disband (thanks shauren)
--HG--
branch : trunk
2010-08-21 10:31:46 +02:00
click f7ad5b2624 Core/Build: Clean up more nonPCH-issues + fix a warning in Timer.h (unsigned/signed cast)
--HG--
branch : trunk
2010-08-21 09:53:04 +02:00
click 6939c92a76 Buildsystem/PCH: Remove DatabaseEnv.h from PCH-list, due to the insane amounts of times it seems to be "forgotten" in main sources
--HG--
branch : trunk
2010-08-21 08:23:53 +02:00
click 71b48cadc2 Core: Make shared build happily without PCH (there are still issues with game ++)
--HG--
branch : trunk
2010-08-21 08:08:49 +02:00
John Holiver 6e6d62def9 Core: Creature should aggro player when players aggro creature during SetInCombatWithZone (otherwise, creature will remain not in combat).
--HG--
branch : trunk
2010-08-21 02:15:19 -03:00
John Holiver fcca6060d0 Core/Spells/Scripts: Another spell effect needed for ToCr (Paralytic Toxin). Thanks for Dark0r.
--HG--
branch : trunk
2010-08-21 01:02:38 -03:00
Machiavelli 8cfc3782e3 Fix linux build (with PCH enabled, mind you)
--HG--
branch : trunk
2010-08-21 03:44:02 +02:00
Machiavelli 994186f267 DB Layer:
- Make SQL Transactions actual objects used in code. (Thanks to Derex for the idea)
* Uncommitted transactions will be automatically rolled back and cleaned up using ACE_Refcounted_Auto_Ptr, so no need to call Rollback() in the code.
* Prevents recursive transactions and makes developers aware of transactions going on.
* Gets rid of unneccesary overhead iterating over a concurrent map.
- Some cleanups in affected code, including better usage of transaction control in AH / mail related code to prevent data loss.

*** Experimental, use at own risk, recommended to backup your DBs. ***

--HG--
branch : trunk
2010-08-21 03:19:25 +02:00
click a7498d2f56 Core/Includes: Include ACE as an external dependency, not local (#include "ace/something.h" -> #include <ace/something.h>)
--HG--
branch : trunk
2010-08-21 02:27:12 +02:00
silinoron d89671727b fix r905a640a2d - tabs to spaces, and add a forgetten break.
--HG--
branch : trunk
2010-08-20 15:22:42 -07:00
silinoron 43b1c2dba4 * Remove support for map-based random number generation (which seems unused).
* Re-add in support for the old mersenne twister for those whose processors don't support SSE2.
* Toggling whether or not you are using SFMT is as easy as checking a CMake flag, USE_SFMT, which defaults to 0.

--HG--
branch : trunk
2010-08-20 12:42:14 -07:00
John Holiver ca350b4758 Core/Spells/Scripts: Needed spell fixes for some Trial of the Crusader bosses (Leeching Swarm, Slime Pool and Burning Bile)
--HG--
branch : trunk
2010-08-20 14:11:26 -03:00
Machiavelli d661202054 Properly update resultset parameter when using QueryCallback template.
Fixes issue #3512

--HG--
branch : trunk
2010-08-20 13:30:49 +02:00
Machiavelli a3270e79e3 Return proper MySQL connection for syncrhonous requests based on calling thread instead of bundled connection.
--HG--
branch : trunk
2010-08-20 12:44:08 +02:00
click 24d752e782 Core/Build: Fix non-PCH build, again... :P
--HG--
branch : trunk
2010-08-20 11:48:12 +02:00
azazel 812b6694f9 Core/DB scripts:
* provide more information in error messages for DB scripts
* cleanup in DB scripts code

--HG--
branch : trunk
2010-08-20 14:57:05 +06:00
click a470c91bf0 Buildsystem/Macro: Use the correct number for Allendale-CPUs and fix a minor typo
--HG--
branch : trunk
2010-08-20 10:11:37 +02:00
click 6aa1731198 Buildsystem/Macro: Add support for Intel Family 6 Model 30 (Allendale) CPU optimizations (Based on Westmere)
--HG--
branch : trunk
2010-08-20 10:02:01 +02:00
azazel a200de3b5f Core
* Cleanup in LoadScripts method and related stuff (use enum instead of string to differentiate between script maps)
* Fix creation of id and sanity checks for spell_scripts. Should fix warnings about missing spells with id > 65535

--HG--
branch : trunk
2010-08-20 12:19:14 +06:00
azazel acc43ea47d Buildsystem: add missing argument to macro. Fixes CMake issues on Win
--HG--
branch : trunk
2010-08-20 12:08:12 +06:00
click 8d62f4e6ce Buildsystem: Add helperscripts to detect SSE2 extensions, and optimize platform compileflags for the architecture
+ minifix in scripts (wrong includedir)

--HG--
branch : trunk
2010-08-20 04:09:39 +02:00
click 6501948dc8 Buildsystem/Core: Adjust filenames to their correct case
--HG--
branch : trunk
2010-08-20 02:10:08 +02:00
Spp c75ab7fd28 Dungeon Finder: Add a check to avoid rolechecks with no dungeon (Only happen with groups loaded from DB)
This fixes a crash in UpdateProposal.

Updates issue 3465

--HG--
branch : trunk
2010-08-20 01:27:05 +02:00
silinoron cf3c9b4ed6 merge
--HG--
branch : trunk
2010-08-19 16:13:42 -07:00
silinoron ac59ff802b Switch to using SIMD-oriented Fast Mersenne Twister for random number generation.
In testing, reduced random number generation time by a factor of 8-10.
Drops support for processors older than Pentium 4.
Drop Mersenne Twister library; use a C++ SFMT library.

--HG--
branch : trunk
2010-08-19 16:13:10 -07:00
John Holiver ccd1e66e56 Core/Scripts: Onyxia movement before phase 2
--HG--
branch : trunk
2010-08-19 17:50:38 -03:00
click 21cf500cb1 Core/Scripts: Fix build - AND DON'T USE SPACES IN FOLDERNAMES PLEASEKTHX!
--HG--
branch : trunk
rename : src/server/scripts/Northrend/Icecrown Citadel/boss_lord_marrowgar.cpp => src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp
rename : src/server/scripts/Northrend/Icecrown Citadel/icecrown_citadel.h => src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.h
rename : src/server/scripts/Northrend/Icecrown Citadel/instance_icecrown_citadel.cpp => src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
2010-08-19 20:47:32 +02:00
silinoron d58e19385f Fix combustion crits with area of effect spells - patch by moriquendu.
--HG--
branch : trunk
2010-08-19 10:37:20 -07:00
azazel 5a237a8ea9 Add missing holiday id <-> BG id definition for AB (by Quriq14)
--HG--
branch : trunk
2010-08-19 22:24:22 +06:00
Machiavelli 717aac1663 Merge
--HG--
branch : trunk
2010-08-19 16:43:50 +02:00
Machiavelli 17d0382cd4 Fix a crash in transaction commands.
Fixes issue #3495

--HG--
branch : trunk
2010-08-19 16:41:43 +02:00
Shauren a693f49bd1 Vehicles: Prohibit entering vehicle in combat only if it is a multi-passenger mount
Scripts/Icecrown Citadel: Changed Bone Spike id and remove teleport z+3 hack, its a vehicle, thx wowgargamel
Scripts/Icecrown Citadel: Fixed typo in variable name, thx Paradox
Scripts/Icecrown Citadel: Added warning emote for Bone Storm

--HG--
branch : trunk
2010-08-19 16:40:47 +02:00
Machiavelli 46438f9f92 - Call mysql_thread_end() for every deleted MySQLConnection instance, should fix the ¨Error in my_thread_global_end(): X threads didn't exit¨ issue. (Thanks to Aokromes for testing)
- Add some debug info to help trace down the other causes of the shutdown crash.

--HG--
branch : trunk
2010-08-19 16:35:52 +02:00
Machiavelli 7d915911f9 Properly end mysql connections and libraries on exit.
--HG--
branch : trunk
2010-08-19 15:47:29 +02:00
Machiavelli 7bac588be2 Solve one of the few culprits that cause authserver and worldserver to exit improperly after the recent database layer changes.
--HG--
branch : trunk
2010-08-19 15:37:53 +02:00
QAston 30bcf8c659 Scripts/Spell: extend SpellScript class: add target aura accessors and functions which prevent various effects of the spell from being executed. Check out SpellScript.h for details
--HG--
branch : trunk
2010-08-19 14:31:31 +02:00
azazel d4605c5f7f Fix (in theory) bug (already tapped error) for spells with banish mechanics (Banish, Cyclone).
Closes issue #1945.
Closes issue #2402.

--HG--
branch : trunk
2010-08-19 16:20:06 +06:00
Spp 72e13547d0 Config: Cosmetic changes in worldserver.conf file
--HG--
branch : trunk
2010-08-19 10:55:11 +02:00
Supabad cd7dac2957 Scripting: Skadi the Ruthless can now be removed from his drake with 3 harpoon strikes
changed on patch 3.3.2 thanks to aokromes for pointing the change

--HG--
branch : trunk
2010-08-19 10:56:49 +02:00
azazel 9b13fa8688 Fix typo in SQL (yet again, now with correct spell id)
--HG--
branch : trunk
2010-08-19 11:27:30 +06:00
azazel 888a13fb15 Fix typo in SQL
--HG--
branch : trunk
2010-08-19 09:54:27 +06:00
Machiavelli 3932fc8c83 - Fix Linux build (huge thanks to Aokromes for testing as always)
- Some work towards resolving the crash on shutdown by implementing a shutdown task

--HG--
branch : trunk
2010-08-19 00:13:09 +02:00
Spp fb9c6c96c7 Dungeon Finder: Some optimizations to find algorithm
* Select first match as valid (Before it was storing all possible and later selecting one)
* Add some checks to make sure no unnecessary calcs are done

--HG--
branch : trunk
2010-08-18 22:50:04 +02:00
Spp eebb36ba58 Dungeon Finder: Fix a possible crash in UpdateProposal
--HG--
branch : trunk
2010-08-18 22:32:11 +02:00
Machiavelli d47b9851cd This should fix linux build - please confirm.
--HG--
branch : trunk
2010-08-18 21:25:42 +02:00
click 95f0d56077 Core/Scripts: Fix even more scriptbugs from convertion (thanks to Kierkegaard)
--HG--
branch : trunk
2010-08-18 20:35:29 +02:00
John Holiver 8bf208c0fd Core/Spells: SPELL_ATTR_CU_IGNORE_ARMOR to Impale(65919) several difficulties
--HG--
branch : trunk
2010-08-18 15:21:24 -03:00
Machiavelli d845a903b1 DBLayer:
- Use ACE_Future and ACE_Future_Set for async SQL queries with callback
* Callbacks will now be executed from the thread and object that scheduled the request, instead of the world runnable thread (and thus are no longer dependent on the 50ms forced sleep time).
* This design gets rid of a potential DOS loophole in the resultqueue system - unique requests will be cancelled when re-requested.
- Drop now redundant SQLQueryTask, SQLResultQueue, SQLResultQueueTask operations.
- Drop now redundant CharacterHandler class
- Change static callback functions in WorldSession to normal functions.

Thanks to Derex and Zor for advice along the way.

--HG--
branch : trunk
2010-08-18 19:48:51 +02:00
QAston 2ffe785765 Core/Spells: add SPELL_ATTR_CU_IGNORE_ARMOR to the avalible custom attribute list, make some spells use the attribute. Research made with JohnHoliver and Shauren
--HG--
branch : trunk
2010-08-18 19:26:07 +02:00
enjoi b8a613647f Core/ObjectMgr: Prevent vehicleid from having an incorrect value when reloaded with .reload creature_template.
--HG--
branch : trunk
2010-08-18 15:49:51 +01:00
Shauren 71a5320eda Scripts: Added script for Lord Marrowgar
Added base script for Icecrown Citadel instance

--HG--
branch : trunk
2010-08-18 17:19:47 +02:00
QAston cb70376c6e *Backout radaaba37a4. Brings back command table caching. Thanks to Machiavelli for spotting the issue.
--HG--
branch : trunk
2010-08-18 15:06:28 +02:00
QAston 5e78e222c1 Core/Spells: Implement TARGET_DEST_CHANNEL_CASTER(106) and TARGET_GAMEOBJECT_AREA_PATH(108). Rename TARGET_UNIT_CHANNEL to TARGET_UNIT_CHANNEL_TARGET, TARGET_DEST_CHANNEL to TARGET_DEST_CHANNEL_TARGET
--HG--
branch : trunk
2010-08-18 15:04:00 +02:00
azazel 9d45f29593 Making sure CreaturesAddon are re-loaded after creature evade (by NoFantasy).
--HG--
branch : trunk
2010-08-18 18:10:42 +06:00
azazel 694ab45bc7 Add missing header. Now project should compile without PCH as well
--HG--
branch : trunk
2010-08-18 14:09:48 +06:00
enjoi e20a541494 Core/Vehicles: Players cannot enter a vehicle when in combat. Fixes issue 1966.
--HG--
branch : trunk
2010-08-18 06:51:59 +01:00
azazel c0f3a7f9ef Core/spells: move 20425 Guarded by the Light spell from Warlock spells to Paladin spells.
PS Well, this spell used to be in SPELLFAMILY_WARLOCK case, so it seems it never worked before. And that's why I added it to Warlock spells.

--HG--
branch : trunk
2010-08-18 12:26:17 +06:00
click 7d8146f989 Buildsystem/Core: Adjust header locations in CMake for collisions and shared + clean up includes from re26dbe6981
This sorts out issues with non-PCH compiles on supported platforms.

--HG--
branch : trunk
2010-08-18 07:17:04 +02:00
enjoi 774eb840e9 Properly return command table every time it is called, rather then just the first time.
Fixes the issue with .command showing the wrong information.
Fixes issue 3459.

--HG--
branch : trunk
2010-08-18 04:50:22 +01:00
silinoron d6fe4b23e9 Add support for recruit-a-friend XP and reputation multipliers.
More research needs to be done to implement summoning and granting levels.

--HG--
branch : trunk
2010-08-17 19:18:09 -07:00
click 8c4c5aef8b Buildsystem/Core: Add new includepath for collision library after changes - fixes linux-build
--HG--
branch : trunk
2010-08-18 03:40:14 +02:00
Machiavelli 6818c8b0ba Remove redundant files that I overlooked in my previous commit.
--HG--
branch : trunk
2010-08-18 02:39:24 +02:00
Machiavelli ae97cfeae4 Remove a double placed line in authserver.conf.dist
--HG--
branch : trunk
2010-08-18 02:36:41 +02:00
Machiavelli 87218eadcd * HIGHLY EXPERIMENTAL - USE AT OWN RISK *
Database Layer:
- Implement connection pooling: Instead of 1 delay thread per database, you can configure between 1 and 32 worker threads that have a seperate thread in the core and have a seperate connection to the MySQL server (based on raczman/Albator´s database layer for Trinitycore3)
- Implement a configurable thread bundle for synchroneous requests from seperate core threads (see worldserver.conf.dist for more info)
- Every mapupdate thread now has its seperate MySQL connection to the world and characters database
- Drop inconsistent PExecuteLog function - query logging will be implemented CONSISTENTLY later
- Drop current prepared statement interface - this will be done *properly* later
- You´ll need to update your worldserver.conf and authserver.conf
- You´re recommended to make a backup of your databases before using this.
* HIGHLY EXPERIMENTAL - USE AT OWN RISK *
* HIGHLY EXPERIMENTAL - USE AT OWN RISK *
etc.

--HG--
branch : trunk
2010-08-18 02:25:52 +02:00
Spp 1ab2bd6d58 Dungeon Finder: Update wait time after a successful proposal
--HG--
branch : trunk
2010-08-18 00:30:17 +02:00
Spp 7a13043af4 Dungeon Finder: Properly remove from current and new queues after a proposal was found (Better fix than b70906fded)
--HG--
branch : trunk
2010-08-18 00:32:11 +02:00
click a4af5d5567 Buildsystem/Windows: Enable multihreaded compiling on MSVC > version 7 (report issues if any) - thanks to Leak for the heads up
--HG--
branch : trunk
2010-08-18 00:32:31 +02:00
azazel 66fcd52106 Add more methods to SpellScript.
Spells cleanup: move spells from the core to scripts.

* Shaman spells: 39610 Mana Tide Totem, 1535 Fire Nova (and ranks)
* Death Knight spells: 55090 Scourge Strike (and ranks), 49158 Corpse Explosion (and ranks), 50524 Runic Power Feed
* Druid spells: 54846 Glyph of Starfire
* Warlock spells: 6201 Create Healthstone (and ranks), 47422 Everlasting Affliction, 47193 Demonic Empowerment, 63521 Guarded by The Light
* Hunter spells: 37506 Scatter Shot, 53412 Invigoration, 53209 Chimera Shot
* Quest spells: 45449 Arcane Prisoner Rescue (quest 11587), 46023 The Ultrasonic Screwdriver (quest 11730). Closes issue #3068

Clean old code for hunter's Heart of the Phoenix, move script effect of hunter's Master's Call to corresponding script.
Move DK's Hungering Cold to spell_scripts table (needs DB support)

--HG--
branch : trunk
2010-08-18 00:20:23 +06:00
QAston 0284ed4cfe *Core/Spells: Implement TARGET_UNIT_SUMMONER
*Rename TARGET_UNIT_MINIPET to TARGET_UNIT_TARGET_PUPPET.

--HG--
branch : trunk
2010-08-17 20:19:06 +02:00
click 67e7786ccc Core/SQL: Correction on SQL-file, make sure the SQL is properly formatted with a ; in the end.
--HG--
branch : trunk
2010-08-17 16:04:50 +02:00
Spp c23bb8c58d Dungeon Finder: Add null check log to track an error (Will only appear after a server crash with Lfg groups)
--HG--
branch : trunk
2010-08-17 13:36:09 +02:00
click 407f39cbac Yay for typos...
--HG--
branch : trunk
2010-08-17 12:09:45 +02:00
click 3695accf50 Core: Add support for reloading gossip_scripts + add missing SQL for earlier inserted commands (gossip_menu and gossip_menu_option)
Thanks to Kaelima
Fixes issue 2433

--HG--
branch : trunk
2010-08-17 11:49:53 +02:00
click 26386d1e20 Core: Use enum-size for CONFIG_START_ALL_EXPLORED (was hardcoded to 64, not using the proper size of the enum PLAYER_EXPLORED_ZONES_SIZE)
Fixes issue 2726

--HG--
branch : trunk
2010-08-17 11:27:47 +02:00
click feb71c4b7d Core/Scripts: Fix some typos in a few scripts - thanks to Kierkegaard
Fixes issue 3443
Comment 3446 test if has been sorted now

--HG--
branch : trunk
2010-08-17 10:44:41 +02:00
teacher 05795303f4 FIxes sql syntax on previous commit. Of course, if you don't save the file before committing...yet again two revs for one update, and I have had coffee!
--HG--
branch : trunk
2010-08-17 09:39:18 +02:00
teacher 5345d82e65 Proper insert statement for 9421_world_command.sql (also help description needs an update). Re-import it if you already have imported it a first time.
Added recent sql update to full.

--HG--
branch : trunk
2010-08-17 09:34:59 +02:00
silinoron c0c9350eeb Send the right data when trying to log in with the wrong password.
Thanks VladimirMangos.

--HG--
branch : trunk
2010-08-16 19:28:50 -07:00
silinoron 58b6090efd Rename .goname to .appear, .namego to .summon, and .groupgo to .groupsummon. Also do some cleanup in Level1.cpp.
Fixes issue #3451

--HG--
branch : trunk
2010-08-16 18:21:22 -07:00