Commit Graph
124 Commits
Author SHA1 Message Date
Spp defd131970 Dungeon Finder: Initial setup and dungeon listing
--HG--
branch : trunk
2010-05-20 23:35:27 +02:00
Machiavelli cef21f6e39 Fix crash introduced in 8199 (5a30b77777b7)
--HG--
branch : trunk
2010-05-16 14:14:54 +02:00
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
Spp d6df19cd99 Add GUID to groups
--HG--
branch : trunk
2010-05-08 01:58:47 +02:00
click 029e480454 Add stricter regulations for instances (login-checks and support for sending unbound player to parent-instance / homebind if not matching criterias)
Patch by Elron103 - closes issue #1323.

--HG--
branch : trunk
2010-05-04 18:25:30 +02:00
Machiavelli 453e3e8976 Partial revert of 6ab9e720f3d2fca8bfe14b2ba857008cf018e0cd, thanks click and Liberate for talking sense into me. Only load 1 spec in memory at a time. Also fixes totem bar loading due to a typo.
--HG--
branch : trunk
2010-04-28 22:35:55 +02:00
Machiavelli ab013e42c9 Fix action buttons sent to client when swapping between talent specs. Storage related parts by Hunuza (MaNGOS), big thanks.
--HG--
branch : trunk
2010-04-28 16:08:31 +02:00
click e79d50fa2d Reapply the previous "actionbars"-fix/handling db/coreside
Fixes issue #1669
Note: This issue has been a pain in the rear, as it was actually messing up
clients that ran a vanilla client without addons. The issue only comes
in to place when players load a SINGLE actionbar, and not selecting
"activate all bars". Extensive testing and debugging done to figure out
why this actually happened - I'll fricking shoot the next one messing
with it!

--HG--
branch : trunk
2010-04-16 02:14:21 +02:00
n0n4m3 8abcca0a06 Another fix quest flags, Implement support weekly quests cooldowns(Original patch by GriffonHeart), also code cleanups.
--HG--
branch : trunk
2010-04-15 08:26:30 +04:00
n0n4m3 e3e5ca6227 Drop not needed table 'item_text', add new column 'text' in table 'item_instance'. Original patch by Vladimir.
--HG--
branch : trunk
2010-04-14 12:43:42 +04:00
click b5e9b5fa13 * Fix actionbars-issue with talent-based spells/actions disappearing
* Revert previous mess someone(tm) made with the "reinstating" actionBars -field (me!)

--HG--
branch : trunk
2010-04-13 18:35:00 +02:00
click 52ba3d3a96 Restore load/save shown actionbars, missing from 3.3.3 upgrade
Original SQL by hunuza/MaNGOS project

--HG--
branch : trunk
2010-04-12 14:04:08 +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
n0n4m3 1dc4f7c745 Drop characters data blob. Bit thx to hunuza.
--HG--
branch : trunk
2010-04-11 11:00:02 +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
Brian 74ccd57597 * Move some values out of the data blob in the characters table
* (honor, kills, title, currencies, watched faction, drunken-status, health and power)
* Original Author Hunuza - thank you
* Ported to Trinity by RammboNr5 - thank you
* Tested by Aokromes - thank you
* Closes Issue #911

--HG--
branch : trunk
2010-03-02 10:12:47 -07:00
n0n4m3 bcd4a48328 Removed stupid/not needed file Spellid.h.
--HG--
branch : trunk
2010-02-15 18:23:39 +01:00
Brian 486c00891b * Core switch to client 3.3.2 (11403)
* Credits (in no particular order) to:
* n0n4m3, raczman, manuel, Spp, Malcrom, Teacher, QAston, Tartalo,
* thenecromancer, Xanadu, Trazom, Zor, kiper
* Additional credits to:
* TOM_RUS and NoFantasy from MaNGOS
* Thanks for testing Aokromes and XTElite1
* SoTA still needs some work, but is very playable (huge thanks to raczman and
* kiper)
* To upgrade, you need to apply all SQL from sql/updates/3.2.2a_old from the
* last rev you are on
* and then apply all SQL from sql/updates/3.3.2_old to char / realmd / world
* DBs
* Known problem with guild banks.

--HG--
branch : trunk
2010-02-14 19:13:14 -07: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
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
Rat 5b6079ea67 *cleaned up SharedDefines
--HG--
branch : trunk
2010-01-10 16:27:47 +01:00
QAston 8e9d2cdf01 Update aura system:
* Change system logic - unify Auras, AreaAuras and PersistentAreaAuras:
  * Aura has now its owner - which is the WorldObject, which applies aura (creates AuraApplication object) dependant on aura radius, and effect type
  * Owner can be Dynobj (DynObjAura class) for PersistentAreaAuras, or Unit (UnitAura class) for Area and nonArea auras
  * Aura data is shared for all units which have AuraApplication of the Aura
   * Because of that AuraEffect handlers , and periodic tick functions can't modify AuraEffect object (they are const now)
  * Remove spell source and AreaAuraEffect classes
  * Add AuraEffect::UpdatePeriodic function, to allow periodic aura object modification (target independant)
  * Add AuraEffect::CalculateAmount and AuraEffect::CalculateSpellMod function, to allow non-default amount calculation
  * AreaAura updates are done in owner _UpdateSpells cycle
  * Since now you don't need to wait an aura update cycle to get area aura applied on it's correct target list
  * And you can access area aura target list
  * Add basic support for aura amount recalculation
  * Save recalculation state and base amount of auras to db
  * Add AuraEffect::CalculatePeriodic function to determine if aura is periodic, and to set correct tick number after aura is loaded from db
  * Add ChangeAmount function in addition to SetAmount function, to allow easy reapplication of AuraEffect handlers on all targets
  * Sort aura effect handlers in SpellAuras.cpp and .h by their use
  * Add check for already existing aura of that type to some AuraEffect handlers, to prevent incorrect effect removal
  * SPELL_AURA_CONVERT_RUNE and MOD_POWER_REGEN and MOD_REGEN hacky handlers are now implemented correctly
  * Send aura application client update only once per unit update - prevent unnecesary packet spam
 * Fix ByteBuffer::appendPackGUID function - it added additionall 0s at the end of the packet
 * Fix memory leak at player creation (not deleted auras)
 * Updated some naming conventions (too many to mention)
 * Added Unit::GetAuraOfRankedSpell() function
 * Remove procflags on aura remove, use Aura::HandleAuraSpecificMods instead
 * Added functions to maintain owned auras (GetOwnedAuras, GetOwnedAura, RemoveOwnedAura, etc)
 * Implement AURA_INTERRUPT_FLAG_LANDING
 * Implement EffectPlayerNotification (thanks to Spp)
 * Remove wrong aura 304 handler
 * Add better handler for death runes
 * Remove unnecesary variables from DynamicObject class, and cleanup related code, link dynobj duration with aura
 * Add GetAuraEffectTriggerTarget function in CreatureAi for special target selection for periodic trigger auras used in a script
 * Add many assert() procection from idiots using some functions in wrong way
 * I am to lazy to write here anything more
Thanks to Visagalis for testing this patch
PS: Do not make patches like this, please

--HG--
branch : trunk
2010-01-10 01:23:15 +01:00
Anubisss df88de1f2a Fix 3 memory leakz.
--HG--
branch : trunk
2009-12-29 16:02:40 +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 a7c0f6beb3 Update CharacterHandler, Channels System for 322a
--HG--
branch : trunk
2009-12-17 10:49:15 +01:00
Kudlaty 379cbb72af Mangos merge: [8874] Extract player skills from data blob. #526
Converted by Azazel.

--HG--
branch : trunk
2009-12-14 20:47:43 +01: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
maximius 906b00465a *add 11 new event hooks to the OnEvents system, by Hawthorne
--HG--
branch : trunk
2009-09-23 20:19:21 -07: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 <[email protected]>

Thanks to Stryker and onkelz28!

--HG--
branch : trunk
2009-09-18 14:10:37 -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
megamage 790c5348a3 [8445] Fixed redundant calculation of v and s on every login Author: arrai
The SRP-6 specifications clearly say, that v and s are only to be
    calculated on registering a user and changing his password; calculating
    them on every login is plain waste.

--HG--
branch : trunk
2009-09-02 16:22:32 -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
Machiavelli e71f5e474e * Add debug message for HandleCharCreateOpcode in the hope to pinpoint bug that prohibits character creation for no apparent reason.
--HG--
branch : trunk
2009-08-24 02:41:01 +02: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 7ca0f5b721 *Fix the crash caused by client customize log.
--HG--
branch : trunk
2009-08-16 16:32:11 -05:00
maximius 2fd68eab44 *Add Dual Spec support, original by EnderGT, thanks to Thyros and XTElite1 for helping me test :)
--HG--
branch : trunk
2009-08-14 17:24:52 -07:00
megamage 6890d8aedb *Log old name for customize request
--HG--
branch : trunk
2009-08-14 18:55:35 -05:00
megamage 4f4775a31b [8339] Improved storing/restoring BG entry point
* Introduced new table character_battleground_data
    * Entry point is now stored on BG enter event not join event
    * Entry point for dungeons is now correctly set to nearest graveyard
      (this prevent well known assert in GetInstance because of porting to already destroyed instance)
    * Teleporting from BG correctly restore mount state
    * Teleporting from BG correctly restore taxi flight
      (in multipath flight you will end up in nearest transition point on the route)

    Signed-off-by: ApoC <[email protected]>

--HG--
branch : trunk
2009-08-12 20:27:00 -05:00
QAston bee1dff87f *Use #defines instead of spellids for often used spells.
*Make recently broken talent Improved Healthstone work again - by iadus3.

--HG--
branch : trunk
2009-08-12 18:51:19 +02:00
megamage 47e36000cb [8304] Move standup code to login, remove other not needed data change at save. Author: VladimirMangos
Now players saved as-is without any modifications.

--HG--
branch : trunk
2009-08-05 16:03:33 -05:00
megamage 793ec8c97d [8286] Correctly show talent points after talents reset at login by "at login" flag. Author: redcore
--HG--
branch : trunk
2009-08-02 10:11:48 +08:00