Commit Graph

240 Commits

Author SHA1 Message Date
Paul Coene 0fc72875b2 Modify roam boxes to correctly modify and use destination Z 2017-07-31 09:21:49 -04:00
Paul Coene 03399fe3fd Repair so that mobs that are fleeing or feared use FixZ. 2017-07-22 17:57:23 -04:00
KimLS 69c6879ac9 Merge fix 2017-07-22 14:20:40 -07:00
Akkadius 7cda4aaa2c Fix some pathing logic that is using Z to match a node reach when it is error prone in certain scenarios
Fixed a decent amount of path logging
2017-07-18 19:09:28 -05:00
KimLS 5f1063acb9 Add pathfinding interfaces, still heavily wip 2017-07-18 00:01:59 -07:00
Akkadius f7cc23d415 Cracked the code on FixZ offsets 2017-07-16 03:21:13 -05:00
Akkadius 70a74d6615 Fix for mobs who are hailed while moving - this allows them to properly stop, and return on their grid after pause time 2017-07-15 23:57:08 -05:00
Akkadius 43204e52f8 Client position updates should be smoother (granted the client has a good connection)
Clients should also no longer randomly disappear
2017-07-14 20:49:57 -05:00
Akkadius aae1d2f049 Better Z compensation on hills, while engaged and NPC's quickly recover if they go underground 2017-07-08 22:17:39 -05:00
Akkadius cfd2f8776e More Z fixes 2017-07-03 19:36:35 -05:00
Akkadius 83605831ec Remove some of the legacy Z adjust functions conflicting with newer changes 2017-07-03 14:27:11 -05:00
Akkadius c3c60b331a Resolve issues with NPC's hopping to the ceiling in small corridors
Improved grounding issues with NPC's during combat
Improved scenarios where NPC's need to be dragged out of the ground - they should correct themselves far more consistently
	- Scenarios where an NPC is coming up from the bottom floor, or from the top floor, they will correct much better
	- A video of these tests can be found here: https://www.youtube.com/watch?v=HtC7bVNM7ZQ&feature=youtu.be
2017-07-01 15:57:41 -05:00
Akkadius 1f39a0cb3e Fix some NPC and Corpse falling through the ground issues 2017-07-01 03:07:45 -05:00
Akkadius 539fa8b262 Fixed issues with Z correctness when NPCs are pathing on normal grids
Fixed issues with Z correctness when NPCs are engaged with players following
NPC corpses should fall into the ground far less
2017-06-28 02:38:20 -05:00
KimLS a632d60140 Redo timing on movement and missiles to better match our new tic rate 2017-04-11 21:47:00 -07:00
KimLS 281483efc1 Merge of a monster 2017-04-02 20:03:51 -07:00
Akkadius 7aa1d243b0 [Performance] Reworked how all log calls are made in the source, see changelog.txt for more details 2017-04-01 03:51:46 -05:00
KimLS 25cbdf5f2c Merge branch 'master' into eqstream 2017-02-28 23:18:35 -08:00
Uleat bf239f9691 A 'hack' and a 'fix' (bot movement changes) 2017-02-27 21:32:07 -05:00
KimLS f07b5d9032 Legacy connection wip 2016-11-07 21:03:06 -08:00
Michael Cook (mackal) 60da544d3a clang-tidy modernize-use-auto 2016-05-25 16:10:28 -04:00
Natedog2012 7efccad13e GetFreeGrid should no longer crash when trying to #wpadd in a zone that has no grids 2016-02-02 01:53:30 -08:00
Akkadius ce0011ab18 Renaming of some timers 2015-11-01 17:12:14 -06:00
Akkadius e5ad5e13db Comment out Log.Out super hot path line 2015-11-01 16:11:25 -06:00
KimLS a69fbb9e0b Set -> Get Timer 2015-07-08 18:10:04 -07:00
KimLS 753f53be1b Some small tweaks to reduce the amount of SendPosUpdates() are actually getting sent out on the wire. 2015-07-08 17:10:55 -07:00
KimLS 214873c139 Merge conflicts abound and now are fixed 2015-07-02 20:12:51 -07:00
ngdeao 850a908874 Fixed #modifynpcstat runspeed <value>, to work with new speed calculations.
Updated #showstats and #npcstats for new speed calcs to display speeds again in familiar float format.
Improved client movement while AI Controlled, such as feared and charmed.  Movement will be much smoother from clients perspective.
2015-06-29 22:57:37 -06:00
ngdeao b11fea91a6 Fixed some mob speed scaling. 2015-06-28 00:35:55 -06:00
KimLS e5d1e98793 Added deity and race checking to AAs, doubled over the sanity check code and found a mistake, added code to make boats move smoother after loading into oot 50 times and seeing it skip every time. 2015-06-12 02:56:51 -07:00
regneq be210950d7 readded previous commit smoother pathing. 2015-05-28 15:05:45 -07:00
SecretsOTheP 76d7fe1586 Fixes for mobs on pause waypoints dancing around.
Fixes for runspeed <= 0 as reported by demonstar55
2015-05-26 02:27:48 -04:00
SecretsOTheP 788959a5e2 Haynar's movement fixes.
Changes Speed from float to int. EQ client deals with int step locs better than it does floats according to Haynar's testing.

This also contains mob runspeed changes. I recommend you set runspeeds to start in the DB 1.25 for NPCs below 1.25 which will match player runspeeds almost equally. Existing DBs will need to be updated.

General Cleanup of MobAI functions. Mobs now change their heading on AIMovement timers if their targets' heading has changed since that time. This prevents players from being able to land backstabs inbetween mob swings.

Charmed/feared players now send the appropriate packet, there was a missing CastToClient() in spells that was missing.

Mob runspeed can no longer be snared to 0%, instead, 1% of their base runspeed is the maximum. Roots apply as roots instead of a modifier under this code.

There is going to be bugs with this code. It's better we push through it than revert it. Sanctuary has been running this for a good week and we've worked through the issues.

Misc updates:
Exported some variables to perl, including:

EVENT_ITE_CLICK_CAST:
EVENT_ITEM_CLICK:
spell_id - returns the spell_id of the click effect.
return value - cancels the cast.

EVENT_DROP_ITEM:
quantity - returns the # of items dropped in the packet. If the item has charges, charges are returned here instead.
itemname - name of the item being dropped
itemid - id of the item being droppped
spell_id - spell_id associated with the item's click effect.
slotid - the inventory slot id of the item being dropped.
return value - cancels the item from being dropped.

Added Perl function: CalcEXP. Calculates the experience you would gain for an NPC that cons a specific con value to you.

Fixed a bug where you would receive the group experience bonus and group experience messages for simply being in a group, regardless of the player being in the same zone as you.
2015-05-25 12:35:53 -04:00
Michael Cook (mackal) 553b7c9f8c Move the extra appearance packet guard to SetAppearance 2015-05-18 00:04:55 -04:00
Michael Cook (mackal) 79a87fac1d Guard against eaStanding spam 2015-05-17 23:51:24 -04:00
regneq 052f343e4d smoother NPC pathing. (credit to Haynar from EQMacEmu) 2015-05-11 21:42:48 -07:00
Akkadius a698eff106 Natedog: Fix #gassign to work more appropriately and simplify the function 2015-01-25 23:27:44 -06:00
KimLS 34bec5913b Merge plus changed getposition to return a reference 2015-01-24 11:48:06 -08:00
Akkadius ce161c2583 Some fixes from replace removal of LogSQL 2015-01-24 03:50:33 -06:00
Akkadius 2457f5f455 Remove occurrences of LogSQL 2015-01-24 03:49:03 -06:00
KimLS 17af9e3808 Merge fixes, hopefully didn't break anything. 2015-01-23 13:36:27 -08:00
KimLS 269d56e1d0 Switched out our kinda juryrigged vector types for glm::vec types since we use that as a 3d math library already but never switched out the types 2015-01-23 00:01:10 -08:00
Michael Cook (mackal) f702e953e7 Some std::abs usage and a bit of clang-formatting 2015-01-22 22:59:52 -05:00
Akkadius c5447778a6 Merge remote-tracking branch 'remotes/origin/master' into logging_changes
Conflicts:
	world/client.cpp
	world/worlddb.cpp
	zone/aggro.cpp
	zone/bot.cpp
	zone/client.cpp
	zone/client_packet.cpp
	zone/client_process.cpp
	zone/doors.cpp
	zone/entity.cpp
	zone/inventory.cpp
	zone/mob_ai.cpp
	zone/perl_client.cpp
	zone/spells.cpp
	zone/waypoints.cpp
	zone/zone.cpp
	zone/zonedb.cpp
	zone/zoning.cpp
2015-01-21 17:29:30 -06:00
Akkadius 98a49ad086 More cleanup of some QueryDatabase references that no longer need auto results 2015-01-19 05:39:51 -06:00
Akkadius 99baba4762 More cleanup of some QueryDatabase references that no longer need auto results 2015-01-19 05:38:23 -06:00
Akkadius cacf9df269 Remove Duplicative MySQL Error: Error in GetHighestWaypoint query '%s': %s 2015-01-19 05:26:10 -06:00
Akkadius 499364e9fe Remove Duplicative MySQL Error: Error in GetFreeGrid query '%s': %s 2015-01-19 05:26:09 -06:00
Akkadius 2ef8f79338 Remove Duplicative MySQL Error: Error adding grid entry '%s': '%s' 2015-01-19 05:26:08 -06:00
Akkadius ca53c40899 Remove Duplicative MySQL Error: Error getting next waypoint id '%s': '%s' 2015-01-19 05:26:06 -06:00