Commit Graph
196 Commits
Author SHA1 Message Date
leak b6074f90da Core: Cleaned up leftovers from loading functions streamlining 2011-03-10 22:22:29 +01:00
Shauren 9710c41a40 More warning fixes 2011-03-08 19:11:02 +01:00
Machiavelli 28b14f36c8 Core/Vehicle: Use db table GuidLow instead of normal GuidLow (which may differ per instance) for vehicle_accessory definitions. 2011-03-07 20:48:53 +01:00
Machiavelli 27680e420f Core/Vehicles:
- Remove some wrong checks in vehicle_accessory loading.
- Remove Reset() call from Vehicle::Install() - reset is already called by AI functions
2011-03-07 20:25:55 +01:00
Machiavelli d6ddc6410c Core/Vehicles: Rename vehicle_accessory to vehicle_template_accessory, and implement a new table named vehicle_accessory to allow accessory definitions based on GUID that will overwrite defeinitions based on entry.
Fixes #Nay
2011-03-06 23:45:22 +01:00
Machiavelli 6c4a0354a2 Core/ObjectMgr: Move some npc_spellclick_spells and vehicle_accessory related errors to startup instead of post-startup runtime 2011-03-06 11:12:19 +01:00
leak f5e9c2c23b Core/Groups: And here i was talking about sync execution.. 2011-03-01 01:59:26 +01:00
leak 709c395421 Core/Groups: Forgotten changes from group id recycling reimplementation, also cleanup queries should be sync (and due to their one time execution have no need to be prepared statements) 2011-03-01 01:42:18 +01:00
Machiavelli 683cea9e83 Core/Vehicles:
- Grab correct npc entry from npc_spellclick_spells in case of player vehicle. Fixes DB errors added in my previous changeset
- Allow aura's with SPELL_AURA_CONTROL_VEHICLE to stack if there are enough free seats, even if spellIds are identical.
- Fix a possible infinite loop. Thanks to manuel for spotting
2011-02-27 03:58:41 +01:00
leak aa2455b586 Core/Groups: Reimplement group id recycling 2011-02-27 00:55:45 +01:00
Machiavelli 3ac80ee3a4 Core/Vehicles: Correct usage of npc_spellclick_spells instead of blatant hacks for vehicle entry.
Note: This may break a few vehicles, but only due to the absence of proper, non-hackish data.
2011-02-26 23:00:09 +01:00
Azazel 0c8f1c7b5b Core/Misc: rename some prepared statements to conform to naming standards (there are no CLEAN statements, there are DEL ones) 2011-02-25 00:46:26 +06:00
leak b27735b590 Core/Groups: Reuse group guids to stop endless growth 2011-02-22 23:49:57 +01:00
Machiavelli 918f1ce8ec Core/Vehicles:
- Allow configurable TempSummonType and timer for vehicle_accessory table instead of hard coded values
- Reimplement some earlier charted VehicleSeatFlagsB, that were temporarily removed because of VEHICLE_SEAT_FLAG_UNCONTROLLED (they now work in conjunction with eachother)
2011-02-22 23:47:28 +01:00
leak bde5adf9bd Core/Globals: Cleanup queries should be blocking if we want to be sure to load clean data 2011-02-22 21:01:07 +01:00
Machiavelli e07e20ffca Core/Log: Implement log masks for debug log level, to allow selective debug output. Update your worldserver.conf. 2011-02-20 20:16:34 +01:00
Shauren 7e2ddb2fd3 Scripts/Icecrown Citadel: Added support for weekly quest Residue Rendezvous 2011-02-19 14:43:36 +01:00
A Metaphysical Drama 34f64c3651 Core/ObjectMgr: Fixed typo in loading instance encounters 2011-02-12 10:40:07 +01:00
runningnak3d 05e075ce0e Core/Gossip: Remove support for npc_gossip table (DEPRECATED). 2011-02-11 13:04:45 -07:00
Shauren 4a55030f38 Core/Creatures: Flag dungeon bosses for quicker lookups for related encounters 2011-02-09 16:28:56 +01:00
Shauren c2b0bcbd6c Core/Instances: Implemented DungeonEncounter.dbc for creating completed encounters mask to use in packets
Core/Dungeon Finder: Implemented new way of giving random dungeon rewards, linked to DungeonEncounter.dbc
2011-02-03 22:20:40 +01:00
leak 137b079eea Core: Generic cleanup (tab2spaces/trailing whitespace removal) 2011-01-26 01:03:35 +01:00
leak f7af49291b SQL: Characters db storage type cleanup No. 7 (final) - Note:
- It is _strongly_ recommended to extensively test the recent changes before applying them to live data

- To fully resync the character db layout with TC releases it is recommended to dump the characters table with
mysqldump --no-data characters > characters_database_livedata.sql
and use a diff tool to compare it against sql/base/characters_database.sql
2011-01-20 02:11:49 +01:00
leak a486eb0c2f SQL: Characters db storage type cleanup No. 5 2011-01-20 00:08:45 +01:00
leak a7df9ddff1 SQL: Characters db storage type cleanup No. 4 2011-01-19 22:46:21 +01:00
Machiavelli 52cd2cbd7e Core/Maps: Unload transports in MapManager::UnloadAll instead of singleton destructor.
Core/Transports: Properly delink units from transports on transport desutruction. - Thanks to Shauren for help.
Core/ObjectAccessor: Unload corpse 'storage' in added UnloadAll method called in WorldRunnable postservice hook.
Core/Master: Change some postservice queries to syncrhonous (direct) execution to ensure execution on shutdown
Core/Master: Remove redundant calls to ACE::init and ACE::fini

These changes were made to fix crash/freeze issues on shutdown.
2011-01-16 00:08:52 +01:00
Spp bd2728eb74 Core: Fix some warnings 2011-01-11 11:18:00 +01:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
leak 2697315476 Core/ObjectMgr: Copy/Paste fail in the recent loading functions cleanup. Thanks to cyberbrest for noticing.
Closes issue 5264

--HG--
branch : trunk
2010-12-25 05:22:37 +01:00
Machiavelli ee1e93d7ca Fix a search&replace failure from previous rev.
--HG--
branch : trunk
2010-12-24 19:50:42 +01:00
Machiavelli 398d71285d Core: Fix a possible crash in WorldSession::ProcessQueryCallbacks
Author: Cyberbrest
Closes issue #5262

--HG--
branch : trunk
2010-12-24 19:46:11 +01:00
Machiavelli 885960af45 Missing change from previous rev
--HG--
branch : trunk
2010-12-24 19:07:18 +01:00
Machiavelli c05ed659cb Core/Entities:
- Rename creature_linked_respawn to linked_respawn
- Update functionality: add field ´linkType´.
** 0 = creature respawn dependant on creature (default)
** 1 = creature respawn dependant on gameobject
** 2 = gameobject respawn dependant on gameobject
** 3 = gameobject respawn dependant on creature

--HG--
branch : trunk
2010-12-24 18:55:50 +01:00
Shauren 928443d899 Core: Removed more operator workarounds for ACE_Singleton (missed previously because of inconsistent naming)
--HG--
branch : trunk
2010-12-23 23:25:44 +01:00
Shauren e99ca097ed Core/ObjectMgr: Fixed loading groups
Closes issue #5197.

--HG--
branch : trunk
2010-12-23 21:03:27 +01:00
Xanadu cfa26522ad Core: Fixed occasional wrong order of async operations at respawn time saving. Closes issue #5239.
DB schema: Sorted out a discrepancy in respawn time column format.

--HG--
branch : trunk
2010-12-23 05:49:23 +01:00
Shauren 0f3b9019a8 Core: Get rid of dirty operator workaround for ACE_Singleton class implementation
--HG--
branch : trunk
2010-12-22 21:25:23 +01:00
Shauren 7b4e1c6387 Core/ObjectMgr: Static members are no longer accessed through singleton
--HG--
branch : trunk
2010-12-22 20:23:47 +01:00
leak 6115b0bd5f Removing ProgressBars as they are performing badly on startup.
[**************************************************] 100%
R.I.P

--HG--
branch : trunk
2010-12-22 00:12:03 +01:00
leak 739a3b9165 Core/ObjectMgr: Simplify trainer spell loading. Should decrease loading time on decently sized machines
--HG--
branch : trunk
2010-12-21 20:26:59 +01:00
leak fd694cd232 Streamlining loading functions for server startup
- Added a couple of timer outputs
- Improved code consistency between loading functions
- Progess bars should look and behave similar on all OS now (sLog.outString() is not needed anymore to replace the progress bar in log files)

--HG--
branch : trunk
2010-12-19 17:06:33 +01:00
azazel b39b8fdd0d DB Schema/Characters: removed columns auctionhouse.item_template, character_inventory.item_template, guild_bank_item.item_entry and mail_items.item_template and created item_instance.itemEntry column instead of them.
As a side effect moved related queries to prepared statements.
As one more side effect fixed not shown and lost mail items in returned expired mail (patch by Quriq14).

--HG--
branch : trunk
2010-12-15 14:08:12 +06:00
click 2642894342 Core: Add new system for parallelizing client packet processing. Handle WorldSession updates in Map::Update() where we are safe to proceed. Patch by Ambal.
(And clean up tabs and whitespace while rummaging around in there)
Closes issue 5084.

--HG--
branch : trunk
2010-12-13 22:37:56 +01:00
azazel d2d62eab50 Cleanup: implemented helper methods for manipulating percentage calculation and used it where appropriate (plus fixed some other warnings).
NOTE: Initially I just wanted to fix some warnings, but noticed that there is no common method for percentage calculation and various formulas are used many time in the code making it difficult to read and understand what the code actually does. So, I introduced several template methods for calculating percent values and adding those values to the original base. I replaced all the raw calculations throughout the code where found, but I could have missed something or could have made a mistake. So, please report any strange behaviour after this commit.
If you ask me why I did it: for the sake of consistency and exact understanding what code means. If you see CalculatePct method, you clearly understand, that it find the value of x percent of y. And you can easily express, for example, spell behviour "reduces smth by x%" by the means of a method instead of recalling school maths.

--HG--
branch : trunk
2010-12-11 20:37:38 +06:00
Spp 408fce1de6 Core: Some optimizations
- Declare some functions const
- Fix some mem leak
- Fix some resource leak
- Remove unused variables and functions
- Remove duplicate functions
- Reduce the scope of some variables
- Remove unused file

--HG--
branch : trunk
2010-12-06 02:07:53 +01:00
Shocker 0c44bd33ee Core/Items: Enforce item attributes stored in DBC files by default and add config option to allow overriding with database values, patch by ZxBiohazardZx.
Closes issue 4785.

--HG--
branch : trunk
2010-12-01 21:20:28 +02:00
click 6fa169810b Core/Reputation: Implement a more generic solution for reputation spillover (fix by Lynx3d, port by Kaelima)
* Sorts out issues with factions 1037 and 1052
* Give a more correct client output when reputation is assigned to parent faction
* reputation_spillover_template can still be used to override spillover from dbc
Closes issue 4915.

--HG--
branch : trunk
2010-11-24 13:41:20 +01:00
click 5cd3904059 Core/DBLayer: Move tables reserved_name, gameobject_respawn and creature_respawn from WORLD database to CHARACTER database as it's content is realm-specific and should be preserved (thanks to leak for the cleanup)
*** TO PRESERVE (COPY) THE DATA CONTAINED IN THE OLD TABLES, YOU MUST FOLLOW THE FOLLOWING SQL-RECIPE (REPLACE DATABASENAMES WHERE NEEDED!) ***

-- Move creature_respawn from world to characters db
INSERT INTO `characters`.`creature_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid, `respawntime` `instance` * FROM `world`.`creature_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`creature_respawn`;

-- Move gameobject_respawn from world to characters db
INSERT INTO `characters`.`gameobject_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid`, `respawntime`, `instance` FROM `world`.`gameobject_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`gameobject_respawn`;

-- Move reserved names from world to characters db
INSERT INTO `characters`.`reserved_name` (`name`)
SELECT `name` FROM `world`.`reserved_name`;
-- Remove reserved_names table from world db
DROP TABLE `world`.`reserved_name`;

*** THE ABOVE MUST BE DONE, OR EXISTING INSTANCES WILL BE FULLY RESPAWNED - YOU HAVE BEEN WARNED ***
Closes issue 4842. Closes issue 4849.

--HG--
branch : trunk
2010-11-19 15:53:14 +01:00
Shocker 48d90fab32 Misc: Some engrish fixes, thanks to ZxBiohazardZx, closes issue 4740
--HG--
branch : trunk
2010-11-14 23:46:34 +02:00
Machiavelli 9153b83ab6 Core/ObjectMgr: Properly block when mutex is being held when saving creature/GO respawntime data instead of discarding the save operation.
--HG--
branch : trunk
2010-11-10 21:57:33 +01:00