Commit Graph

118 Commits

Author SHA1 Message Date
click a0105b5bde Add logout-notice in charlog on player logout
--HG--
branch : trunk
2010-05-15 01:26:28 +02:00
click f60d534b73 Cleanup on some database-related files: merge some DB-related files, add some consistency to callhandles in sourcetree (M
+ combine MySQL-specific files into main database-files (click)
+ fix vcproj-files, adjust handler-function names for consistency (Machiavelli)

--HG--
branch : trunk
2010-05-08 05:03:32 +02:00
Machiavelli 6ad4d4c8d2 Make sure that socket reference is removed on closing WorldSession server sided before ReactorRunnable does in the reactor event loop.
--HG--
branch : trunk
2010-05-05 22:56:02 +02:00
Spp cb0cb96283 Warning Fixes
Code Style cleanup
Fix linux compile

--HG--
branch : trunk
2010-04-29 23:12:16 +02:00
Spp f9650d4a36 Fix SMSG_AUTH_RESPONSE when queue is full.
Patch by Gian

--HG--
branch : trunk
2010-04-28 08:55:07 +02:00
Machiavelli c4e4486903 Properly deregister WorldSocket connections in case of reaching socket timeout time.
--HG--
branch : trunk
2010-04-23 12:56:16 +02:00
Spp 74dd02d024 Remove LOTS of compile warnings
--HG--
branch : trunk
2010-04-19 09:26:37 +02:00
click e44dc0af74 * Prevent possible memory leak in WorldSession (correction of order)
Fix by Derex

--HG--
branch : trunk
2010-04-12 14:24:10 +02:00
n0n4m3 93f7e2796c Some fixes to guild/arenateam events. Big thx to TOM_RUS.
--HG--
branch : trunk
2010-04-11 11:06:51 +04:00
Spp 2454c290b8 Code Style (game + scripts only):
"==" --> " == " (when needed)

--HG--
branch : trunk
2010-04-07 23:25:02 +02:00
Spp 49d05ba9aa Code style (game + scripts only):
"( " --> "("
" )" --> ")"

--HG--
branch : trunk
2010-04-07 22:59:46 +02:00
Spp d19e127080 Code style (game + scripts only):
"if(" --> "if ("

--HG--
branch : trunk
2010-04-07 19:14:10 +02:00
Spp 2e127f7a30 Code style (game + scripts only):
"while(" --> "while ("

--HG--
branch : trunk
2010-04-07 19:13:19 +02:00
Spp 182e9a20b1 Code style (game + scripts only):
"for(" --> "for ("

--HG--
branch : trunk
2010-04-07 19:12:44 +02:00
Spp f490ad5ac2 Code Style: tab to spaces
--HG--
branch : trunk
2010-04-07 17:24:07 +02:00
Spp 8034a6c48e Rename 'Hostil' to 'Hostile'
Credits to NoFantasy (Mangos)
Closes issue #411

--HG--
branch : trunk
2010-03-09 11:11:10 +01:00
raczman 91b8ee104e Added new type-safe cast functions.
This, when properly used, should get rid of most memory corruption issues,
currently, casting types C-style with no checks leads to some abstract crashing.
Functionality is same as with dynamic_cast<>, but with no RTTI check - so when
casting into invalid type you will receive NULL, and most probably crash.
At the same time, i took the liberty to convert most Player* casts to ToPlayer().
Still needs crapload of casts being moved to new facility.

--HG--
branch : trunk
2010-03-07 15:20:19 +01:00
Xanadu f8d1920fa5 Yet more cleanup, mostly in the script system. This should conclude the script integration into core.
--HG--
branch : trunk
2010-02-05 13:01:32 +01:00
Anubisss d9cb070215 Implement QueryResult_AutoPtr type which is ACE's reference counted auto_ptr(ACE_Refcounted_Auto_Ptr) for QueryResult pointers.
Use this auto_ptr for every DB queries(except QueryNamedResult yet).

This patch guarantees NO memory leaks from QueryResult pointers.

Thanks to raczman for the idea and for the helping to make this patch.

--HG--
branch : trunk
2010-01-23 14:45:58 +01:00
XTZGZoReX 48b085124e * Add basic AddonMgr.
* All this really does at the moment is save addon names + CRCs to DB for use for.. whatever, later.

--HG--
branch : trunk
2010-01-20 16:24:52 +01:00
Rat 0cc053ea4d *Integrate Script system to Core
-added ScriptMgr for loading scripts
-removed bindings
-moved script system to src/game
-moved scripts to src/scripts
-VC project files updated
-cmakes updated (not 100% done yet)

NOTE to Devs:
-file locations changed
-precompiled renamed to ScriptedPch
-ecsort_ai renamed to ScriptedEscortAI
-follower_ai renamed to ScriptedFollowerAI
-guard_ai renamed to ScriptedGuardAI
-simple_ai renamed to ScriptedSimpleAI
-sc_creature renamed to ScriptedCreature
-sc_gossip renamed to ScriptedGossip
-sc_instance  renamed to ScriptedInstance

*use the new headers in scripts, thank you

NOTE to ALL:
cmake not fully tested, please report any errors with it
could make creashes, incompability
USE AT YOUR OWN RISK before further tests!!

--HG--
branch : trunk
2010-01-19 11:36:05 +01:00
n0n4m3 99f66a6bc9 Updated copyright for new year.
--HG--
branch : trunk
2010-01-16 20:19:18 +03:00
XTZGZoReX 7b4922172b * Fix a crash in logging part of [7048].
--HG--
branch : trunk
2010-01-16 12:26:52 +01:00
XTZGZoReX b96698beca * unsigned char -> uint8.
--HG--
branch : trunk
2010-01-16 01:59:26 +01:00
XTZGZoReX 26e11448dd * Update structure for SMSG_ADDON_INFO and add some sort of basic handling for incorrect addon CRCs (anti-cheating).
* Fix CRLF in MovementHandler.cpp.
* Move some handlers/senders to correct place.

--HG--
branch : trunk
2010-01-15 19:50:27 +01:00
teacher c27674a327 Fix CRLF.
--HG--
branch : trunk
2010-01-13 18:20:16 +01:00
thenecromancer ea4e25f3aa Implement vehicles created by player mounts.
Original idea by Elmaster, packet research by Wrong, ty.

--HG--
branch : trunk
2010-01-13 11:16:38 +01:00
n0n4m3 250a00cc1c Temporary revert 6743 commit. I fix this patch across 1-2 days.
--HG--
branch : trunk
2009-12-24 10:20:15 +01:00
n0n4m3 3fe0bc5254 Replaced time(NULL) on sGameTime.GetGameTime() this is used for better performance.
Original Timer.h divided into 2 parts. Shared project has no need to know about GameTime Singleton.
2 Identical structures with different types are now replaced with one generic templated structure and 2 typedefs.

--HG--
branch : trunk
2009-12-23 08:04:10 +01:00
n0n4m3 f20b25d1c9 Update some code for 322a
--HG--
branch : trunk
2009-12-17 12:36:55 +01:00
n0n4m3 863fca80eb Removed some redundant player->SaveToDB calls, original autor balrok
--HG--
branch : trunk
2009-12-17 07:56:20 +01:00
maximius d22768a6b5 *Cleanup
--HG--
branch : trunk
2009-10-18 18:38:46 -07:00
maximius 3f338cc1c3 *Massive cleanup redux.
--HG--
branch : trunk
2009-10-17 16:20:24 -07:00
maximius e585187b24 *Backed out changeset 3be01fb200a5
--HG--
branch : trunk
2009-10-17 15:51:44 -07:00
maximius 26b5e033ff *Massive cleanup (\n\n -> \n, *\n -> \n, cleanup for(...) to for (...), and some other cleanups by hand)
*Fix a possible crash in Spell::DoAllEffectOnTarget

--HG--
branch : trunk
2009-10-17 15:35:07 -07:00
Machiavelli 0d75a8b7d4 Log contents of unprocessed tail data if logging is set to debug.
--HG--
branch : trunk
2009-10-11 21:11:59 +02:00
maximius 333f1c9d72 *[8475] fixed some gcc-warnings Author: balrok
*[8476] Revert some recent cleanup changes, some other fixes and cleanups. Author: VladimirMangos
*[8489] Fixed player visibility update in case view point different from player itself. Author: SilverIce
*[8493] Avoid unexpected multiply error messages at wrong `quest_template`.`RewSpell*` Author: VladimirMangos
*[8496] Resolve some #include cycles and unsafe code.
* Common.h -> Threading.h -> Errors.h -> Common.h
* Remove reduncdent #include "ByteBuffer.h" in headers
* Remove redundent #include "Auth/BigNumber.h" in headers
* Avoid multyply data copy at use some now dropped functions in BigNumber.
* Avoid copy fixed byte count from byte arrays with unknown real size created from BigNumber.
* Avoid possible problems for build mangos at different platform or compilers. Author: VladimirMangos.
*[8501] Apply code style and cleanups to some Player functions. Author: VladimirMangos.
*[8502] Disable quests related to specific game events at startup if event not active. Also rename member boolean variable. Author: NoFantasy
*[8506] Add check for IsAutoComplete() in SendPreparedQuest().
For cases where quest is repeatable but has Method!=0, QuestDetails must be sent instead of RequestItems.
Some additional code cleanup. Author: NoFantasy
*[8507] Check amount of spawned pools before decrement to avoid unexpected result. Also rename variable to more meaningful name. Signed-off-by: NoFantasy <nofantasy@nf.no>

Thanks to Stryker and onkelz28!

--HG--
branch : trunk
2009-09-18 14:10:37 -07:00
maximius 140ec674a0 Backed out changeset d3fe2d6d504a (please test your patches thoroughly before getting me to push them ogeraisi)
--HG--
branch : trunk
2009-09-14 16:49:23 -07:00
maximius b37f9b1e55 *Merged MaNGOS [8458], [8475], [8476] by ogeraisi, thanks to all authors :)
--HG--
branch : trunk
2009-09-14 16:02:13 -07:00
maximius eef5abe6e1 *Event Hooks (OnLogin, OnLogout, OnPVPKill) by Hawthorne
*Boss Emote Command for DB Scripts by XTElite1

--HG--
branch : trunk
2009-09-13 00:01:35 -07:00
maximius b4a13eff51 *Missed some changes
--HG--
branch : trunk
2009-09-11 13:42:39 -07:00
megamage 28e229d8a8 [8436] Return CMSG_SET_ACTIVE_VOICE_CHANNEL to STATUS_AUTHED. Author: VladimirMangos
It sent not only just after logout but also just before login packet.

--HG--
branch : trunk
2009-09-01 16:56:02 -05:00
megamage dc68c2b269 [8433] Implement proper store and use character specific account data.
* Base at TOM_RUS reseach save/load character specific account data in new table `character_account_data`
    * Move its in sql update from `account_data` to new table.
    * For client packets that can be send in loggined state or just after logout but assocualted
      with recently logout character add new login status STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT
    * Store low guid for loggedin player or recently logout into WorldSession.

Author: VladimirMangos, TOM_RUS

--HG--
branch : trunk
2009-09-01 16:47:49 -05:00
megamage aa86640fdf [8408] Optimized guild_member loading during startup. Changed rank ids in guild_rank table.
First start of mangos will take more time then usually, because of guild_rank change. If you want to speed first start up, execute command:
    UPDATE guild_rank SET rid = rid - 1;

    Signed-off-by: Triply <triply@getmangos.com>

--HG--
branch : trunk
2009-08-24 20:23:54 -05:00
megamage c911772125 [8389] Implement check really read received packet size and warning it not all data read. Author: VladimirMangos
* This let more easy catch packet structure chnages at client switch.
    * Fixed structure CMSG_GUILD_BANK_SWAP_ITEMS
    * Fixed structure CMSG_SPLIT_ITEM, CMSG_SELL_ITEM
    * Added read data amount fixes for some other packets.

    Thanks to TOM_RUS in help check correct packets structure.

    Note: not all packets possible fixed. Please report for not fixed cases at errors:
    "opcode %s (0x%.4X) have unprocessed tail data (read stop at %u from %u)"

--HG--
branch : trunk
2009-08-19 17:07:21 -05:00
megamage e954904e6d [8378] Use exceptions instead of explicit size checking for each packet Author: arrai
CHECK_PACKET_SIZE was pretty error prone; once it was forgotten mangosd
    could crash due to the asserts in ByteBuffer.h. That was exploitable by
    malicious players.
    Furthermore, there were duplicate checks: Additionally to
    CHECK_PACKET_SIZE, the ByteBuffer assertions keept an eye
    on not exceeding the packet boundaries - just to crash the server for
    sure in such a case.
    To prevent memory leaks or other undesirable states, please read in
    every handler all variables _before_ doing any concrete handling.

--HG--
branch : trunk
2009-08-19 16:26:22 -05:00
megamage 9ef950f9be *Disable spams of "received not allowed opcode xxx". If any dev finds this error log useful, feel free to add it back.
--HG--
branch : trunk
2009-08-12 19:02:10 -05:00
megamage 31374835f6 *Cleanup about deleting player.
--HG--
branch : trunk
2009-08-10 23:32:20 -05:00
megamage 0fcadd9d25 *Replace "LoginDatabase" with "loginDatabase"
--HG--
branch : trunk
2009-07-31 11:29:28 +08:00
QAston cf0d8a2b03 *Fix alt+f4 exploit in instances.
--HG--
branch : trunk
2009-07-28 16:26:05 +02:00