Commit Graph
61 Commits
Author SHA1 Message Date
jackpoz 378d27f9bc Core/Splines: Fix "velocity > 0.1f" error
Updates #6191.
2014-01-30 20:03:13 +01:00
Vincent_Michael 20004050bc Update copyright note for 2014.
Happy new year.
2014-01-01 00:07:53 +01:00
jackpoz e28cc4660b Core/Movement: Fix invalid memory access
Fix the stack implementation used in MotionMaster and added few sanity checks to ensure no underflows will be made.

Valgrind log:
 Invalid read of size 8
  at : MotionMaster::top() const (MotionMaster.h:115)
  by : MotionMaster::pop() (MotionMaster.h:91)
  by : MotionMaster::~MotionMaster() (MotionMaster.cpp:74)
  by : Unit::~Unit() (Unit.cpp:296)
  by : Player::~Player() (Player.cpp:880)
  by : WorldSession::HandleCharCreateCallback(Trinity::AutoPtr<PreparedResultSet, ACE_Thread_Mutex>, CharacterCreateInfo*) (CharacterHandler.cpp:665)
  by : WorldSession::HandleCharCreateCallback(Trinity::AutoPtr<PreparedResultSet, ACE_Thread_Mutex>, CharacterCreateInfo*) (CharacterHandler.cpp:516)
2013-12-14 16:51:47 +01:00
Shauren 54fd53f7e3 Core/Movement: Fixed possible invalid memory access 2013-12-12 09:50:52 +01:00
Spp 94e2b9332a Core/Logging: Remove LOG_FILTER_XXX defines with it's value (remember logger names are case-sensitive) 2013-11-08 10:50:51 +01:00
Spp d1677b2db0 Core/Logging: Performance-related tweaks to logging system
All sLog->out* functions (except outCommand atm) are replaced with TC_LOG_* macros.
    Memleak fix
2013-05-13 15:07:36 +02:00
Spp 243c325ca4 Core: Declare some functions const and remove use of "using" directive in a couple of files 2013-05-13 15:04:05 +02:00
Shauren d926ad63c0 Core/Spells: Fixed charge effects with non-explicit targets 2013-02-13 20:21:26 +01:00
Nay 4f3c6b1390 Core: Yet another warning fix
@Kaelima: could you verify MoveCharge?
2013-01-22 20:47:52 +00:00
Nay e6a07076c3 Merge remote-tracking branch 'origin/master' into mmaps
Conflicts:
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Movement/MotionMaster.cpp
	src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/HomeMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/RandomMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp
	src/server/game/Movement/Spline/MoveSplineInit.cpp
2013-01-14 13:58:34 +00:00
Spp 802657250c Core/Misc: Apply codestyle to multiple files 2013-01-14 09:50:59 +01:00
Vincent_Michael 62adbdab99 Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps
Conflicts:
	src/server/game/Movement/MovementGenerators/HomeMovementGenerator.cpp
2013-01-01 23:12:21 +01:00
Vincent_Michael cc65aba789 Update copyright note for 2013.
Happy new year.
2013-01-01 00:41:01 +01:00
kaelima 0a88787dfc Merge git://github.com/TrinityCore/TrinityCore into mmaps
Conflicts:
	src/server/game/Entities/Vehicle/Vehicle.cpp
	src/server/game/Movement/MovementGenerator.h
	src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.h
	src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.h
	src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/IdleMovementGenerator.h
	src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/PointMovementGenerator.h
	src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.h
	src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h
	src/server/game/Movement/Spline/MoveSpline.h
2012-12-21 00:00:16 +01:00
Vincent_Michael c75d274362 Core: Fix typos 2012-12-18 14:46:06 +01:00
Spp 2251d1bfae Core/Misc: Set mode 0644 for files 2012-11-27 13:03:12 +01:00
kaelima 94cca94017 Core/Movement: General improvements for confused/fleeing movement 2012-11-13 15:44:42 +01:00
kaelima 3c13454ad7 Merge git://github.com/TrinityCore/TrinityCore into mmaps
Conflicts:
	src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp
	src/server/game/Movement/Spline/MoveSplineInit.cpp
2012-11-05 12:02:08 +01:00
Spp 013fb1f4d9 Core/Misc: reduced amount of string memory allocations (Step I) 2012-10-24 15:34:48 +02:00
Nay 4c3266c7af Tools&Core: Whitespace cleanup
No one likes whitespace, right?
2012-09-30 15:52:10 +01:00
Venugh e7c0d8bef0 Core/MMaps: Applied Trinity Codestyle to PathGenerator. 2012-09-05 23:47:02 +02:00
kaelima a9e672ab1d Core/MMaps: Prevent path generation when falling or exiting vehicle 2012-09-03 20:34:07 +02:00
kaelima d7eeebe0f3 Core/MMaps: Implement pathed charge effect 2012-09-03 20:30:47 +02:00
Subv 97c3e2e6c1 Core/Movement: Make MovementGenerators use pointers instead of references. cleanup 2012-08-25 22:57:55 -05:00
Subv f0473777e2 Core/Mmaps: Fixed jump effects (like Death Grip ). They should not use a path 2012-08-25 14:32:52 -05:00
Subv dc95ce61b4 Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps
Conflicts:
	dep/PackageList.txt
	src/server/game/Movement/MotionMaster.cpp
	src/server/game/Movement/MovementGenerators/HomeMovementGenerator.cpp
	src/server/game/Movement/MovementGenerators/PointMovementGenerator.h
	src/server/game/Movement/Spline/MoveSplineInit.h
	src/server/game/World/World.h
2012-08-22 17:26:53 -05:00
Spp 55ce180f28 Core/Logging: Add Asyncronous logging with Loggers ("What to log") and Appenders ("Where to log") system. Will allow to select to full log some parts of core while others are not even logged.
- Logging System is asyncronous to improve performance.
- Each msg and Logger has a Log Type and Log Level assigned. Each msg is assigned the Logger of same Log Type or "root" Logger is selected if there is no Logger configured for the given Log Type
- Loggers have a list of Appenders to send the msg to. The Msg in the Logger is not sent to Appenders if the msg LogLevel is lower than Logger LogLevel.
- There are three (at the moment) types of Appenders: Console, File or DB (this is WIP, not working ATM). Msg is not written to the resource if msg LogLevel is lower than Appender LogLevel.
- Appender and Console Log levels can be changed while server is active with command '.set loglevel (a/l) name level'

Explanation of use with Sample config:

Appender.Console.Type=1       (1 = Console)
Appender.Console.Level=2      (2 = Debug)

Appender.Server.Type=2        (2 = File)
Appender.Server.Level=3       (3 = Info)
Appender.Server.File=Server.log

Appender.SQL.Type=2           (2 = File)
Appender.SQL.Level=1          (1 = Trace)
Appender.SQL.File=sql.log

Appenders=Console Server      (NOTE: SQL has not been included here... that will make core ignore the config for "SQL" as it's not in this list)

Logger.root.Type=0            (0 = Default - if it's not created by config, server will create it with LogLevel = DISABLED)
Logger.root.Level=5           (5 = Error)
Logger.root.Appenders=Console

Logger.SQL.Type=26            (26 = SQL)
Logger.SQL.Level=3            (2 = Debug)
Logger.SQL.Appenders=Console Server SQL

Logger.SomeRandomName.Type=24 (24 = Guild)
Logger.SomeRandomName.Level=5 (5 = Error)
Loggers=root SQL SomeRandomName

* At loading Appender SQL will be ignored, as it's not present on "Appenders"

* sLog->outDebug(LOG_FILTER_GUILD, "Some log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomName is found but it's LogLevel = 5 and Msg LogLevel=2... Msg is not logged

* sLog->outError(LOG_FILTER_GUILD, "Some error log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomeName is found with proper LogLevel but Logger does not have any Appenders assigned to that logger... Msg is not logged

* sLog->outDebug(LOG_FILTER_SQL, "Some msg related to SQLs")
  - Msg is sent to Logger SQL (matches type), as it matches LogLevel the msg is sent to Appenders Console, Server and SQL
    - Appender Console has lower Log Level: Msg is logged to Console
    - Appender Server has higher Log Level: Msg is not logged to file
    - Appender SQL has lower Log Level: Msg is logged to file sql.log

* sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Some msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). As Logger has higher LogLevel msg is not sent to any appender

* sLog->outError(LOG_FILTER_BATTLEGROUND, "Some error msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). Msg has lower LogLevel and is sent to Appender Console
    - Appender Console has lower LogLevel: Msg is logged to Console
2012-08-03 14:20:18 +02:00
Pesthuf 5acae32530 Core/Movement:
When an NPC is knocked back, the splineflag OrientationFixed should be used, so the NPC keeps his facing and doesn't play the jump start animation. Also corrects the NPCs serverside orientation.
2012-07-28 17:09:38 +02:00
Shauren 425eeb8280 Core/Movement
* Implemented creature movement on transports
* Set minimum speed for creature allowed to start movement (too low speed leads to overflows in movement time calculations which in turn leads to crashes)
2012-05-31 19:45:11 +02:00
Kandera bb97ff7601 Attempt on converting updatewaterstate for use with units (pets and vehicles) 2012-04-16 12:27:06 -04:00
Venugh abc33c7b5d Core/Movement: Correct MotionMaster and fix a crash. 2012-04-09 18:36:45 +02:00
Venugh 8452fd0dbd fixed errors. 2012-04-09 17:05:32 +02:00
Machiavelli e636531da3 Core/Movement: Fix pushback issues and client freeze. 2012-04-08 17:03:44 +02:00
Gyx 5b7493fc66 Core/Misc: Code style and remove unused define.
Signed-off-by: Gyx <[email protected]>
2012-03-29 14:43:34 +08:00
Chaplain af90546835 Core/Movement: Fix MoveJump handling.
*Closes #5238 issue
*Fix possible crash in MotionMaster
2012-02-17 00:19:14 +03:00
Subv 8a72aede16 Codestyle: Renamed some variables to fit codestyle, corrected order in structure/class fields to match alignment (they use slightly less memory now)
Signed-off-by: Subv <[email protected]>
2012-02-14 12:46:26 -05:00
Subv 9791bb599a Merge pull request #5160 from TrinityCore/dynamic_vmaps
Added Dynamic Vmaps, RE-EXTRACT YOUR VMAPS
2012-02-09 11:17:05 -08:00
Subv2112 93d199f043 Core/Collision: Ported dynamic line of sight patch by Silverice from MaNGOS and
added lots of improvements
Please re-extract vmaps
2012-02-09 13:58:22 -05:00
Shocker 08be716ef8 Core/Misc: Rename UNIT_STAT_* enums to UNIT_STATE_* 2012-02-03 19:02:17 +02:00
Chaplain accea2b44e Core/Movegen: Added missing part in ChaseMovementgenerator and minor logic fix in MotionMaster::MoveJump() 2012-01-18 18:42:25 +03:00
Chaplain 86104943cb Core/MotionMaster: Fix logic in MoveLand() and MoveTakeoff() 2012-01-18 16:26:45 +03:00
Machiavelli b02666213c Scripts/Misc: Fix some MovementInform handler filters after recent motionmaster changes
Also correct year of SQL in dbbac0bdaa
2012-01-15 15:27:43 +01:00
Machiavelli dbbac0bdaa Core/Movement: Implement spline movement subsystem.
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc).
Proper implementation of effects such as charge, jump, cyclic movement will rely on it.
However, need improve our states system before.

Technical changes:

* Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation.
* Precission increased. There are no more position desync issues since client's position calculation formulas used.
* Now possible to move by paths with multiple points, send whole path to client.

--
Original author of research and implementation: SilverIce. Massive kudos.
Original port for Trinity (ref #4629) Chaplain and Venugh
With the following incremental fixes during my review:

- Restore flightmaster end grid pre-loading
- Fix uninitialized Creature::m_path_id
- Add missing trinity_string entries for .movegens command
- Fix a bug in WaypointMovementGenerator that would trigger unexpected pausing at waypoints for various amounts of time

Known issues:
- Errors like WaypointMovementGenerator::LoadPath creature XXX (Entry: YYYYY GUID: ZZZZZZ) doesn't have waypoint path id: 0.
This is caused by bad DB data. This commit didn't "break" it.

Do not forget to re-run CMake before compiling.
2012-01-14 15:36:07 +01:00
Machiavelli 2293d2d7df Core/Movement: Prevent IdleMovementGenerator being put into MOTION_SLOT_IDLE and MOTION_SLOT_ACTIVE simultaneously 2012-01-13 16:43:49 +01:00
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
Spp- 0457d98405 Core/Movement: Crash fix 2011-08-01 13:44:54 +02:00
Shauren 3e5aa2d1ff Core/Movement: Implemented methods to animate creatures landing and takeoff and use them in Sindragosa script 2011-07-27 12:40:14 +02:00
leak 1003f30448 Add spaces after commas 2011-04-29 20:47:02 +02:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +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