Machiavelli
d521d75fae
Merge pull request #5825 from w1sht0l1v3/ToCr
...
Scripts/ToCr/Val'kyr Twins: Fix orb targeting.
2012-03-21 13:25:42 -07:00
Machiavelli
e4ee3788e7
Scripts/ToC/Anub'Arak: Prevent spells (Leeching Swarm in particular) being interrupted by other spells.
2012-03-21 12:42:45 +01:00
Machiavelli
5acbd35411
Core/Movement: Update MOVEMENTFLAG_MASK_MOVING, thanks to idostyle
2012-03-18 13:22:36 +01:00
Machiavelli
2b1ba4cd78
Core/Movement: Compute current position in spline::Launch with Z offset. Fixes e.g. hovering creatures height increasing every time player interacts with it.
2012-03-18 13:18:43 +01:00
Machiavelli
48799f3376
Core/Units: Fix movementflag apply for flying/hovering creatures on respawn
2012-03-18 11:35:33 +01:00
Machiavelli
41cc704bf8
Core/Movement:
...
- Don't abort relocation if movementflag restrictions were violated. There might be lag between client and server and even different parts of the core that made this approach improper.
- MOVEMENTFLAG_ROOT cannot be used in conjunction with MOVEMENTFLAG_MASK_MOVING, but it's a valid flag to receive from client.
- Fix falling to ground when unapplying fly/waterwalk aura. NOTE: This is a client-side initiated fall, in the future this should be initiated and updated by the server. (Working on it)
- Rename MOVEMENTFLAG_FALLING to MOVEMENTFLAG_FALLING_FAR
- Rename MOVEMENTFLAG_JUMPING to MOVEMENTFLAG_FALLING
Closes #5751
2012-03-17 20:36:12 +01:00
Machiavelli
5d25dc8926
Tools/VmapExtractor: Don't check registry for game folder on windows, just use relative "Data" dir, similar to linux.
2012-03-17 17:51:00 +01:00
Machiavelli
57a71c8dff
Merge pull request #5763 from w1sht0l1v3/master
...
Core/Unit: Disable spline movement on death.
Fixe respawning after ForceDespawn is called.
Closes #4518
2012-03-17 09:33:29 -07:00
Machiavelli
9bb04a23ad
Merge pull request #5755 from GyxTom/master
...
Core/Script: Clean-Up in Scripts.
2012-03-17 04:02:41 -07:00
Machiavelli
87a121425c
Update src/server/game/Server/WorldSession.cpp
2012-03-17 11:54:56 +01:00
Machiavelli
5d2d2a5ac7
Update src/server/game/Server/WorldSession.cpp
2012-03-17 11:54:21 +01:00
Machiavelli
80975faba2
Core/Movement: Add debug output to Worldsession::ReadMovementInfo to find out which movementflag restriction was violated. Please use this to give feedback.
2012-03-17 11:50:30 +01:00
Machiavelli
cf5ed0a7b6
Core/Movement: Remove MOVEMENTFLAG_FLYING on fly aura unapply as well as _CAN_FLY
2012-03-16 23:41:43 +01:00
Machiavelli
85da463686
Core/Movement: Fix brackets in macro
2012-03-16 23:37:50 +01:00
Machiavelli
65453620e8
Core/Movement: Do not process server side relocation if reading movementinfo from client resulted in violations (= hacking).
2012-03-16 18:15:08 +01:00
Machiavelli
cca93c7a22
Minor typo, major consequences.
2012-03-16 17:27:24 +01:00
Machiavelli
df31af5b4f
Core/Movement: Add server-side check for movementflag correction in previous commit. This effectively prevents (most if not all) flyhacking.
2012-03-16 17:21:15 +01:00
Machiavelli
f8c04b1bc5
Core/Movement: Fix players still able to fly on SPELL_AURA_FLY and SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED unapply.
...
Closes #5731
2012-03-16 17:10:01 +01:00
Machiavelli
7d60290c2e
Core/Units: Offset z coordinate only if MOVEMENTFLAG_HOVER is present, not MOVEMENTFLAG_DISABLE_GRAVITY.
...
(Remnant from an early incorrect version of my UNIT_FIELD_HOVERHEIGHT patch)
2012-03-15 10:16:08 +01:00
Machiavelli
e17a9cfb85
Core/Movement: Add server side filters for MOVEMENTFLAG_WATERWALKING, _FALLING_SLOW and _HOVER depending on required aura types. Fixes exploiting when aura unapply packets (such as corrected in previous commit) are blocked/altered before reaching the client.
2012-03-15 10:12:43 +01:00
Machiavelli
afaed98b7a
Core/Movement: Send correct packet to client when unapplying hover, feather fall and water walking auras.
...
Closes #5704
2012-03-15 10:03:25 +01:00
Machiavelli
a48216e122
Scripts/UP/Svala: Temp compile fix for Svala. Currently rewriting the entire script.
2012-03-12 08:41:13 +01:00
Machiavelli
8af0067016
Scripts/ICC/Lich King: Typo correction in unit_field_bytes_1 usage related to hover, introduced in previous commit (thankfully the only one).
2012-03-12 01:10:02 +01:00
Machiavelli
dc91836b85
Merge pull request #5656 from thomas33/master
...
Yet another copyright update commit, this stuff never gets old! Except in 2013.
2012-03-11 16:57:15 -07:00
Machiavelli
03a24a84e4
Core/Units:
...
- Implement UNIT_FIELD_HOVERHEIGHT (requires DB data). This field, sent in update object packet, will determine the height at which a creature hovers if it has movementflag_hover applied. Note that hovering will now update the server-sided z-coordinate by the value of this field, and that all subsequent positional updates to the client will need to send z coordinate MINUS the hover height offset, or the hoverheight will be visually doubled client side.
- Correct our usage of movementflag_flying, movementflag_can_fly, movementflag_hover and movementflag_disable_gravity (previously levitate), and how they relate to InhabitType in the database. This fixes "flying creatures on steroids" bug (wings flapping too fast), and potentially a lot of visual issues in AI scripts. Note that a lot of scripts still set wrong movementflags, these need to be fixed on a case by case basis.
- Send correct packets for SPELL_AURA_FEATHER_FALL, SPELL_AURA_WATER_WALK and SPELL_AURA_HOVER apply/unapply.
- Send correct packet contents for movement update in Unit::SetSpeed.
- Misc. cleanup in affected scripts.
2012-03-12 00:53:45 +01:00
Machiavelli
b1a8570a30
Core/Spells: Fix item target selection in Spell:SelectImplicitTargetObjectTargets. Typo spotted by zwerg
2012-03-11 14:52:11 +01:00
Machiavelli
d1e4eb0512
Core/Commands: Implement .debug moveflags command. With params you can set MoveFlags and MoveFlagsExtra for targeted unit. Without params it will display the current MoveFlags and MoveFlagsExtra. Useful for debugging upcoming changes.
2012-03-03 16:12:28 +01:00
Machiavelli
6bb689b494
Core/Units: Properly update passenger position if vehicle uses waypoint movement. Fixes e.g. Icefang path
2012-03-01 17:06:41 +01:00
Machiavelli
844e2ca857
DB/Conditions: Really fix the Scarlet Harvest. Quest automatically had STATUS_COMPLETE, so condition needed to be adjusted
2012-03-01 14:43:38 +01:00
Machiavelli
e2c20cca72
Core/Conditions: Small optimization in ConditonMgr, as well as proper rules for spellclick conditions in Clean(), and finally some documentation added on how to add new source types.
2012-03-01 14:43:35 +01:00
Machiavelli
a36a0a77ef
Core/Player: Quests with status QUEST_STATUS_NONE(0) shouldn't be loaded into player's queststatus storage. These should be removed since they are remnants from the old queststatus storage system.
2012-03-01 14:43:32 +01:00
Machiavelli
b9b8f27e45
DB/Conditions: *Proper* conditions for The Scarlet Harvest. Saving the file before committing works.
2012-03-01 00:42:18 +01:00
Machiavelli
e3e958e293
DB/Conditions: Proper conditions for The Scarlet Harvest
...
Closes #5422
2012-03-01 00:10:16 +01:00
Machiavelli
dbec50b89d
DB/Conditions: Fix a lot of spellclick conditions (conversion didn't properly take ElseGroup into account). Also add primary key to npc_spellclick_spells and remove duplicates.
2012-02-29 23:44:06 +01:00
Machiavelli
8e8ff7c660
Core/Conditions: Remove some useless checks in Condition::Meets against a value that's _supposed to be_ const 0 in database.
2012-02-29 13:57:16 +01:00
Machiavelli
218ed813d0
Core/Misc: Add more extensive ByteBuffer exceptions to trace down seemingly random crashes.
2012-02-28 14:51:50 +01:00
Machiavelli
3ea9fe4022
Core/Movement: Remove a redundant check in EffectMovementGenerator that could prevent MovementInform from being called
2012-02-28 00:17:01 +01:00
Machiavelli
f402bad532
Core/MovementGenerators: Ensure correct virtual function overrides are called. May/should/will/could/might fix various different movement related issues. Please report back.
2012-02-27 20:22:38 +01:00
Machiavelli
b2e4f8f958
Core/Misc: Add some documentation to TRINITY_WRITE_GUARD and TRINITY_READ_GUARD because ACE's documentation on underlying objects is not clear.
2012-02-26 15:16:22 +01:00
Machiavelli
dc91fc1050
Core/Vehicles: Fix a crash in object update packet builder (need to remove UPDATEFLAG_VEHICLE on Unit::RemoveFromWorld)
2012-02-22 21:50:01 +01:00
Machiavelli
fa546d1428
Core/Spells: Change logic in assertion in Spell::SelectImplicitTargetObjectTargets.
...
Not sure if this a step in the right direction for the intended design, but following the logic of the function there should be OR unit target OR gameobject target OR item target pointers available. If Item target doesn't belong there then the already present AddItemTarget call should be removed.
2012-02-22 19:16:47 +01:00
Machiavelli
c9748aaacc
Core/Vehicles: Fix a crash in ~Vehicle. Closes #5366
2012-02-22 16:51:56 +01:00
Machiavelli
a3f3058499
Core/Vehicles: Remove some wrong/redundant calls to Unit::ExitVehicle. The aura system already handles it in most places.
...
Also add some documentation on upcoming work on making passenger exit positions work.
2012-02-22 12:26:05 +01:00
Machiavelli
7567d5e359
Core/Conditions: Fix grouping for CONDITION_SOURCE_TYPE_SPELL_CLICK_EVENT
...
Perhaps in the future a more generic solution can be implemented to prevent lots of repetitive code
2012-02-22 11:54:01 +01:00
Machiavelli
1aceab6b62
Core/Pets: Fix stay command if pet is currently processing spline movement
2012-02-21 10:41:48 +01:00
Machiavelli
44195689b9
Core/Units: Use spellclick conditions in Player::canSeeSpellClickOn
2012-02-21 10:17:32 +01:00
Machiavelli
16818d7548
Core/Conditions: Convert npc_spellclick_spells data to condition system. This implements CONDITION_SOURCE_TYPE_SPELL_CLICK_EVENT (previous CONDITION_SOURCE_TYPE_UNUSED_18). Wiki needs to be updated accordingly.
2012-02-20 23:25:59 +01:00
Machiavelli
2d89b4bfe0
Core/DBLayer: Change some incorrect uses of PQuery with PExecute or Execute
2012-01-18 21:02:06 +01:00
Machiavelli
e652d9043b
Missing unsaved changes for previous commit...
2012-01-18 19:00:52 +01:00
Machiavelli
46dda033c8
Core/Items: Blizzlike fix for the recent trade exploit fix
2012-01-18 18:57:21 +01:00
Machiavelli
abd94e324b
Core/Items: Fix crash and updated documentation in SplitItem
2012-01-18 13:14:06 +01:00
Machiavelli
6a44399852
Core/Items: Fix a trading spoof exploit.
...
Closes #4713
2012-01-17 18:51:04 +01:00
Machiavelli
5dd6b8b2dc
Core/Conditions: Change CONDITION_REPUTATION_RANK. It now no longer explicitly checks if ConditionValue2 is equal to the reputation rank. It now checks if the player's reputation rank is in the bitmask of ConditionValue2, where each bits are (1 << ReputationRank).
...
Idea by Aokromes and Malcrom
Data conversion query by Malcrom (*WATCH OUT WITH CUSTOM CONTENT AS THIS DELETES ALL CONDITION TYPE 5's AND RE-ADDS STOCK DATA ONLY*)
2012-01-17 14:31:22 +01:00
Machiavelli
f71ad6d581
DVCS: Add kdiff3 file extensions to gitignore
2012-01-15 15:28:52 +01: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
Machiavelli
bb2696a688
Core/Vehicles: Define and implement VEHICLE_SEAT_FLAG_B_USABLE_FORCED_4
2011-12-22 14:10:05 +01:00
Machiavelli
2d93bd07ba
Core/DBLayer: More generic implementation of callback chains, instead of using this functionality local to CharacterCreatInfo class. Will be used in other places as well.
2011-12-21 10:22:03 +01:00
Machiavelli
17aeeaa9b5
Core/DBLayer: Fix a silly error in HandleStableSwapPet (synchronous query in async context). Fixes possible loss of pets when swapping.
2011-12-21 09:36:05 +01:00
Machiavelli
6c03bf9535
Core/Misc: Some random meaningless Engrish to English conversion in a method name because Discovered is too lazy to do it himself.
2011-12-19 22:06:29 +01:00
Machiavelli
8e0be985fd
Core/Netcode: Fix a possible infinite loop after 829be0b82 (which was accidentally merged in this morning)
2011-12-19 21:12:35 +01:00
Machiavelli
a1683f20dc
Fix SQL file name after pull request, and fix compile on linux.
2011-12-19 11:17:52 +01:00
Machiavelli
16df950fdb
Merge branch 'master' of github.com:TrinityCore/TrinityCore
2011-12-19 11:14:26 +01:00
Machiavelli
829be0b82b
Core/Netcode: Re-enqueue packets with STATUS_LOGGEDIN requirement that are sent before the server recognizes the player as logged in. They will be processed later.
...
Fixes #208
Fixes #1434
Fixes #2338
2011-12-16 15:36:03 +01:00
Machiavelli
db8c10c7bf
Core/Commands: Make GM Ticket commands console enabled. (Aokromes' Suggestions)--;
2011-12-14 14:12:42 +01:00
Machiavelli
8ca9b38fee
Core/Channels: Don't send channel kick/ban notifications if kicker is GM and Channel.SilentlyGMJoin == 1. (Aokromes' Suggestions)--;
2011-12-14 13:53:47 +01:00
Machiavelli
203d4a4952
Core/Commands: Show time left until shutdown in .server info. (Aokromes' Suggestions)--;
2011-12-14 13:42:57 +01:00
Machiavelli
589f067101
Core/DBLayer: Terminate process if table/database structure is not compatible with the core. This will significantly reduce the amount of PEBCAK help and support threads on our forums.
...
Also added a 10 second window to WPFatal for users who never heard of command line before to read the error prior to process termination.
2011-12-13 13:59:00 +01:00
Machiavelli
7c9093e32c
Core/GameEventMgr: Use correct lock type
2011-12-11 16:36:40 +01:00
Machiavelli
1b2c413933
Core/SAI: Preliminary implementation of SMART_EVENT_GAME_EVENT_START and SMART_EVENT_GAME_EVENT_END {param1: game_event.entry}
2011-12-11 16:23:43 +01:00
Machiavelli
d7d79f058d
Forgotten change to seat flag defines, thanks to Venugh.
2011-12-11 15:28:33 +01:00
Machiavelli
c7cdd786fe
Core/Vehicles: In CMSG_ATTACKSWING check if current vehicle seat flags permit attacking before updating standstate etc. Client also checks this.
...
Furthermore, removed incorrect vehicle_seat_flag_b definition and added an unknown vehicle_seat_flag that was found in the client.
2011-12-11 14:44:58 +01:00
Machiavelli
f5b3553bb3
Core/SAI: Typo in second param of SMART_ACTION_SEND_GOSSIP_MENU. This is npc_text_id, not gossip_option_id. Wiki needs to be updated accordingly.
...
Thanks to Prodigy for pointing out.
2011-12-06 12:37:05 +01:00
Machiavelli
4c3c418511
Core/Misc: Make VMapManager2::acquireModelInstance and releaseModelInstance thread safe
...
Closes #4086
2011-11-26 19:11:58 +01:00
Machiavelli
fcd28e5dad
Core/DBLayer: Fix player saving
2011-11-26 15:15:04 +01:00
Machiavelli
72675d55d8
Core/DBLayer: Use prepared statements in Player::SaveToDB. Also split the function up between an INSERT part (new character creation) and UPDATE part (existing character).
2011-11-25 15:14:00 +01:00
Machiavelli
8444532746
Core/Units: Second part of SMSG_MOVE_SET_COLLISION_HGT implementation: compute proper collision height according to client formulae and send this to the client when mounting up.
2011-11-22 20:28:10 +01:00
Machiavelli
367122dd62
Core/Packets: Allow CMSG_MOVE_SET_COLLISION_HGT_ACK to be received from the client (currently unhandled)
2011-11-22 06:02:53 +01:00
Machiavelli
a14cbcaa3e
Core/Units: Partial implementation of SMSG_MOVE_SET_COLLISION_HGT - send proper character collision height on dismount.
...
Fixes #2642
NOTE: Still have to properly implement collision height calculation for mounting up.
2011-11-21 22:54:25 +01:00
Machiavelli
32bcee40bf
Core/Spells: Fix crash in Glyph of Rake
2011-11-20 16:05:41 +01:00
Machiavelli
682c3289c7
Tabs
2011-11-20 13:46:53 +01:00
Machiavelli
cab3def3a4
Core/Units: Revert previous 3 commits about Unit::_IsValidAttackTarget and Unit::GetReactionn until some conclusive research can be done
2011-11-20 12:56:14 +01:00
Machiavelli
28d1cc9cfe
Core/Units: Fix more issues in Unit::_IsValidAttackTarget. (Documentation on changes compared to the client function included)
2011-11-17 19:05:25 +01:00
Machiavelli
8ea8dd4f3d
Core/Units: Replace wrong usage of UNIT_FLAG_PVP_ATTACKABLE with UNIT_FLAG_PLAYER_CONTROLLED in Unit::IsValidAttackTarget, Unit::IsValidAssistTarget and Unit::GetReactionTo. Using 4.1 flags in 3.3.5 doesn't always work out like it should... Also remove now unneeded change from 70b558d
...
Fixes SPELL_AURA_FORCE_REACTION amongst other things
2011-11-16 23:12:31 +01:00
Machiavelli
70b558dd39
Core/Units: Fix Unit::_IsValidAttackTarget (UNIT_FLAG_OOC_NOT_ATTACKABLE check specifically)
...
Closes #3172
2011-11-16 21:02:37 +01:00
Machiavelli
c67af87eda
Core/Spells: Fix SPELL_EFFECT_SEND_EVENT handler being executed more than once when targets != (0, 0). Closes #3934
2011-11-16 19:09:51 +01:00
Machiavelli
28102c5683
Scripts/Ulduar/Freya: Fix chest spawning when completing the encounter properly (in addition to spawn support when abusing .die for testing purposes)
2011-11-14 20:49:46 +01:00
Machiavelli
7d52578b80
Scripts/Ulduar/Assembly of Iron: Fix Immumities for Stormcaller Brundir; Fix Brundir's Lightning Tendrils (visuals need some extra love)
...
Closes #707
2011-10-29 22:49:55 +02:00
Machiavelli
cb52cf011f
DB/Templates: Correct 25 man loot IDs for Freya's chest based on the only actual parsed 25man chest there is. NOTE: This is not WDB data, merely guesswork.
2011-10-29 15:57:50 +02:00
Machiavelli
2575b50b05
DB/Templates: Add missing templates for variations of Freya's Chest. This will allow them to actually spawn on death.
2011-10-29 14:56:01 +02:00
Machiavelli
4f039841e8
Scripts/Ulduar/Freya: Remove unneeded TimeCheck function that would lead to over-spawning of waves.
2011-10-29 14:55:05 +02:00
Machiavelli
40ed37c1e7
Core/GameObects: Fix a crash in GameObject::Delete
2011-10-08 15:06:31 +02:00
Machiavelli
f266d3d957
One last culprit...
2011-10-08 14:36:38 +02:00
Machiavelli
26869bda30
Core: Fix a boatload of crashes after the mass cleanup... Thanks to Broodwyrm for spotting the culprits
2011-10-08 14:33:53 +02:00
Machiavelli
ddfd8e5510
Core: Build fix for linux after code style cleanup
2011-10-08 13:36:27 +02:00
Machiavelli
224c2d3d07
Scripts/Ulduar/Freya: Kill the leftovers of old chest handling
2011-10-08 13:29:48 +02:00
Machiavelli
82dbe7bc17
Core: Fix some build errors after code style cleanup
2011-10-08 13:20:04 +02:00
Machiavelli
9397e7a16f
Scripts/Ulduar/Flame Leviathan: Fix crash #3403 . Thanks to Shauren for the heads up
2011-10-08 13:17:45 +02:00
Machiavelli
680fce6fd8
Core/GameObjects: Fix infinite respawning of chest gameobjects that are summoned trough spells with ie. SPELL_EFFECT_SUMMON_OBJECT_WILD
...
Closes #1618
Closes #2486
2011-10-08 13:17:43 +02:00