Commit Graph

157 Commits

Author SHA1 Message Date
click
a99e12cf0f Buildsystem/Unix: Fix an idiotic split-package behaviour on RedHat-based systems (and possibly some others)
Closes issue 4380

--HG--
branch : trunk
2010-12-24 18:04:09 +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
0f3b9019a8 Core: Get rid of dirty operator workaround for ACE_Singleton class implementation
--HG--
branch : trunk
2010-12-22 21:25:23 +01:00
click
c96070e804 Core: Remove some now defunct code and configoptions. Thanks to 4178something...
Closes issue 5213.

--HG--
branch : trunk
2010-12-21 02:44:37 +01:00
leak
4c9cfa6739 Core/Buildsystem: Resolved quoting problem that caused gcc to spam warnings. Patch by click.
--HG--
branch : trunk
2010-12-20 02:23:55 +01:00
click
0054bd83d8 Buildsystem/Linux: Fix linking of a long lost little child : jemalloc (yes, it has returned, and is now actively linked again)
--HG--
branch : trunk
2010-12-18 01:36:00 +01:00
Spp
382fef1958 Core: Some warning fixes
--HG--
branch : trunk
2010-12-15 10:44:06 +01: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
Machiavelli
f1a73e89b8 Merge
--HG--
branch : trunk
2010-12-13 16:13:32 +01:00
Machiavelli
ea29d87dcc Backed out changeset: 8326a2411148
--HG--
branch : trunk
2010-12-13 09:18:49 +01:00
Machiavelli
4f468f9552 Core/RA: Calculate password hash internally instead of sending plaintext password to mysql.
Convert tabs to spaces.

--HG--
branch : trunk
2010-12-10 09:02:59 +01:00
click
7e0dee8cb1 Fix build
--HG--
branch : trunk
2010-12-10 01:44:34 +01:00
click
456f29c089 Core/Worldserver: Remove external dependency to sockets-library after RemoteAccess being converted to ACE, and fix one minor hiccup on non-PCH builds
--HG--
branch : trunk
2010-12-10 00:33:55 +01:00
Derex
ef768a8307 Rewrite remote access console using ACE
--HG--
branch : trunk
2010-12-10 01:01:44 +02: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
leak
e226c4ac34 - Added Perl based conf merger script
- Removed LogSQL config option until reimplementation on code side
- A bit of cosmetics for .conf files

--HG--
branch : trunk
2010-12-06 00:24:45 +01:00
Machiavelli
b845b9d0fd Core/DBLayer:
- Make time format of MaxPingTime consistent between authserver and worldserver. Note that the value is in minutes, update your config files accordingly if needed.
- Remove obsolete atomic uint32 and prevent concurrent calls to vector::size() in DatabaseWorkerPool

--HG--
branch : trunk
2010-12-05 16:48:47 +01:00
Machiavelli
f5d6319d4d Core/DBLayer:
- Make the mysql connectionpool shared for async and syncrhonous connections.
- Allow configurable amount of connections for the pool
- Allow configurable amount of delaythreads
Note that delaythreads now only represent in-core threads. Whenever they execute a task they will pick a free connection from the pool instead of using their previously unique assigned connection.
The purpose of this design change is better distribution of SQL requests (no bottlenecks paired with idling) among available resources.
This also prevents a ¨memory waste¨ of preparing async prepared statements on synchronous connections (that were never called) - and vice versa. Now, connections aren´t explicitly async or synchronous, they serve both purposes.

Use at own risk, might cause instabilities.
Don´t forget to update your config files and clear your cmake cache.

--HG--
branch : trunk
2010-12-04 21:50:36 +01:00
click
bc098658c6 Core/Chat: Configure automatic owner declaration for custom chat channels (patch by leak)
Closes issue 4974.

--HG--
branch : trunk
2010-12-02 03:54:52 +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
cacf75ae60 Fix a small typo in worldserver.conf.dist leading to errors during config load on "fresh" installs
--HG--
branch : trunk
2010-11-24 20:48:39 +01:00
click
03925d7324 * Remove CRLF from configfiles
--HG--
branch : trunk
2010-11-24 14:03:45 +01:00
click
5753be3271 Core/Configs: Use "oldstyle" configfile method - includes configfile cleanups and also restructuring it so every option is explained properly
Fix by leak. Closes issue 4913.

--HG--
branch : trunk
2010-11-24 13:48:00 +01:00
click
67fade84d3 Core/Commands: Enable SQL query logging by config and command )patch by leak)
Closes issue 4853.

--HG--
branch : trunk
2010-11-19 13:13:07 +01:00
click
c0536f374a Core: Allow toggling ticketsystem on/off by config-setting (patch by leak)
Closes issue 4744.

--HG--
branch : trunk
2010-11-14 00:29:34 +01:00
linencloth
bf888285aa Core:
- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
2010-11-13 17:18:09 +01:00
click
e22426c7c0 Core/Scripts: Reinstate commandscripts, now with extra bling and working commands (and yes, we did test it thoroughly this time)
Thanks to Paradox for sorting the commandscripts and chanhandlers out to work as they were intentionally ment to be like.

--HG--
branch : trunk
2010-11-12 20:47:03 +01:00
click
03e4ecfbfd Core: Partial revert of rcb3188281e, rc85b35f076, r97f9a0fa3e due to missing loader implementation.
(files disabled but kept in repo, and will be fully reinstated once everything is sorted out)
Note: SQL-update-data is NOT supplied for 're-converting' to old help-system - this is after all considered a workrepo untill we tag a commit as stable!

--HG--
branch : trunk
2010-11-10 05:22:27 +01:00
Paradox
de1798e4ac Core/Scripts Part 1 of moving all commands to commandscripts
closes issue 4669
(first 5 patches rolled into 1)
Patch by Paradox

--HG--
branch : trunk
2010-11-09 10:15:35 -05:00
Xanadu
5398ea3ac7 Core/PCH: Added WorldSocket.h include to PCH for worldserver.
--HG--
branch : trunk
2010-11-08 23:40:26 +01:00
silinoron
da4c2339bc Core: Add a warning message for those who are using SFMT for random number generation.
Patch and suggestion by Paradox.

--HG--
branch : trunk
2010-10-27 19:51:41 -07:00
Rat
5cb119e617 Core/AI: implemented SmartScripts System (still beta) not 100% complete
WARNING: Use scripts at own risk. You were warned.
NOTE0: creature, gameobject, areatrigger type scripts should be fully functional
NOTE1: has no effect on any core related stuff if not using any SmartScript
NOTE2: all event/action/etc descriptions can be found in SmartScriptMgr.h

SmartScripts is a reloadable DB-Sript system, with full control for special scripting,
like escorting, following, complex combat handling, pre-stored AI templates(caster, turret, etc) and much more
with a total of 66 events, 78 actions, 22 target types, and can be easily extended

--HG--
branch : trunk
2010-10-27 21:01:47 +02:00
Shocker
66dec6d86f Core/Misc: Implement config option for energy regeneration rate, patch by Ramus, closes issue 4394
--HG--
branch : trunk
2010-10-12 21:05:37 +03:00
runningnak3d
3feda9b6af Core/Vmaps: Remove the ability to ignore individual maps from vmap LOS /
height checking. Also add a warning if vmap.enableHeight is disabled. You
*MUST* have all LOS / height checking enabled to have a functional server.
Original patch by: Vladimir

--HG--
branch : trunk
2010-10-08 20:14:12 -06:00
Shauren
31d4a34000 Fix CRLF in the last file
--HG--
branch : trunk
2010-10-07 15:59:20 +02:00
click
613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click
f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +02:00
click
a67d7c9afd Copyright header updates - part 3... (and some whitespace cleanups)
--HG--
branch : trunk
2010-10-07 14:00:52 +02:00
click
8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
Shauren
6c35c376e9 Buildsystem: Generating revision.h is now a part of build process (revision.h is back as target)
Buildsystem: Removed non-existing include directories

--HG--
branch : trunk
2010-10-03 16:30:22 +02:00
Machiavelli
c4710bde76 Core/DBLayer: Fix MySQL timeout issue. World runnable will now call KeepAlive on each database after a specified number of seconds (MaxPingTime in worldserver.conf)
Based on patch by kingarus81
Fixes issue #4062

Also remove explicit numbering from WorldTimers enum

--HG--
branch : trunk
2010-10-02 14:26:58 +02:00
click
b87d8f4700 Buildsystem: Overhaul of the CMake buildsystem:
- utilize CMake for completely generating revision.h (kills off genrev and revision.h targets):
  - pull and set correct revision-ID/hash from Mercurial (hg) when using regular repository sourcetree
  - pull and set correct revision-ID/hash from archived releases (when pulled from googlecode)
  - set and use _BUILD_DIRECTIVE definition (earlier part of revision.h) as compiletime definition
- delete genrev and related buildsystems
  (now deprecated)
- Move some files around to adhere to buildsystem structure
Thanks to Shauren for figuring out the definition-behaviour for MSVC while he was in the shower

--HG--
branch : trunk
rename : cmake_uninstall.cmake.in => cmake/platform/unix/cmake_uninstall.in.cmake
2010-09-29 23:42:09 +02:00
Spp
e27976102d Core/: Fix warnings
--HG--
branch : trunk
2010-09-28 14:48:17 +02:00
Machiavelli
a9e9a2c884 Core/DBLayer:
- DB Threading model update
* Get rid of ThreadBundleMask and bundled connection
* Implement configurable amount of Synch threads for databasepools
* Use modulus based algorithm to check for free synchronous connections instead of previous ¨get connection by thread key or bundlemask¨ feature
* Locks on mysql context objects are now managed outside the mysql query methods

Fixes issue #4058
Fixes issue #4059
Introduces a ton of more issues. Use at own risk. You were warned. Really.

Don´t forget to update your worldserver.conf

--HG--
branch : trunk
2010-09-27 00:20:56 +02:00
click
f077277aa1 Buildsystem: Set revision.h as a required dependency build before building game, shared, worldserver and authserver
--HG--
branch : trunk
2010-09-25 21:42:11 +02:00
Machiavelli
a24b84e6f7 Core/Commands: Fix a crash in .account onlinelist
Fixes issue #4176

--HG--
branch : trunk
2010-09-25 13:58:29 +02:00
Machiavelli
62946f9ef6 Core/DBLayer:
- Rewrite KeepAlive method for DatabaseWorkerPool. Use mysql_ping instead of explicit select queries, and also schedule KeepAlives for asynchronous threads.
NOTE: While the function is implemented and previous keepalive calls were transformed, it´s possible the keepalive call will need to be placed in several other locations in the code. Please leave feedback on whether or not this fixes your timeout issues.

Update issue #4062

--HG--
branch : trunk
2010-09-25 01:05:24 +02:00
Machiavelli
3c6dc32030 Core/DBLayer:
- Rewrite Field class to be able to store both binary prepared statement data and data from adhoc query resultsets
- Buffer the data of prepared statements using ResultSet and Field classes and let go of mysql c api structures after PreparedResultSet constructor. Fixes a race condition and thus a possible crash/data corruption (issue pointed out to Derex, basic suggestion by raczman)
- Conform PreparedResultSet and ResultSet to the same design standards, and using Field class as data buffer class for both
* NOTE: This means the fetching methods are uniform again, using ¨Field* fields = result->Fetch();¨ and access to elements trough fields[x].
* NOTE: for access to the correct row in prepared statements, ¨Field* fields = result->Fetch();¨ must ALWAYS be called inside the do { }while(result->NextRow()) loop.
* NOTE: This means that Field::GetString() returns std::string object and Field::GetCString() returns const char* pointer.

Still experimental and all that jazz, not recommended for production servers until feedback is given.

--HG--
branch : trunk
2010-09-24 22:16:21 +02:00
Shocker
eaadad5dfd Core/Arenas:
* Fix handling of Arena.ArenaStartPersonalRating
* Correct some typos for some arena configs in default world configuration file

--HG--
branch : trunk
2010-09-21 04:10:01 +03:00
Shauren
a72fc44f9a Core/Loot: Reverted part of revision fe39cb058b75, fixes skinning loot
Core/Loot: Some logic fixes for group looting
Buildsystem/MSVC: Fixed compile warning
Config: Added missing description for Rate.Drop.Item.ReferencedAmount

Closes issue #4004.

--HG--
branch : trunk
2010-09-15 13:44:40 +02:00