237 Commits

Author SHA1 Message Date
Uleat
0ad43977bf Naming convention update for EQEmu::versions::ClientVersionBit 2019-01-07 20:25:43 -05:00
Akkadius
11a43cd320 Texture work 2018-12-31 03:18:59 -06:00
Akkadius
0681e6dbb2 Merge branch 'master' into movement_manager 2018-12-17 01:39:37 -06:00
KimLS
dacbce1c5f Some changes to fixz while pathing 2018-11-29 23:11:39 -08:00
KimLS
cfba613efd Remove floating logic, fix for some bestz logic 2018-11-21 22:10:51 -08:00
KimLS
8f0051db8d Changes to various path finding behavior 2018-11-09 00:54:51 -08:00
KimLS
c0ebe05d5d Prelim swimming support 2018-11-07 21:55:12 -08:00
Akkadius
775b5fcaf1 Mostly done with global base scaling work, dev tooling and various other works 2018-11-04 23:26:34 -06:00
KimLS
29ea65a71e Redoing movement to introduce proper rotation 2018-09-24 22:41:53 -07:00
KimLS
f754cb1307 Move update path to movement manager so all movement will use paths 2018-09-18 23:06:56 -07:00
KimLS
c677169edd Removed existing movement code, started replacing 2018-09-15 19:20:47 -07:00
Akkadius
834062fbf9 Add another layer of randomization to roam box logic, npc's who weren't originally spawned in water won't roambox into water 2018-08-18 22:01:46 -05:00
Akkadius
4b6ab34fd9 Fix, cleanup and simplify the roambox logic and cleanup a bunch of other related code 2018-08-18 18:12:18 -05:00
Uleat
18005ac7a9 Fix for random SoF client crashes (possibly Titanium too) 2018-07-14 18:41:47 -04:00
KimLS
a53f65d86b Merge and compile fixes (non-bot, will do bots later) 2018-04-16 14:15:08 -07:00
Kinglykrab
ceb2b287bb Fixed merchantlist probability.
NPCs were setting a singular chance value and each item was checking based on this value, making the probability field not a random chance per item.
This removes the probability field from NPCs, SetMerchantProbability() and GetMerchantProbability() and makes the probability field truly random chance.

Special thanks to ChaosSlayerZ for noticing the issue here: http://www.eqemulator.org/forums/showthread.php?t=41731
2018-01-27 19:08:15 -05:00
Paul Coene
2dad087bbd Removed pets from Witness Heal Aggro. 2018-01-09 18:00:34 -05:00
Michael Cook (mackal)
4e9c3e19d2 Fix some XTarget FD issues 2017-10-16 01:25:14 -04:00
KimLS
cbbfae0cfc Merge master compile fixes 2017-09-17 13:34:35 -07:00
KimLS
fc7623b690 Merge fix 2017-09-17 13:20:48 -07:00
Akkadius
2a4d6523b1 Fix some zone entrance ghosting 2017-09-17 10:12:41 -05:00
KimLS
6a79694fa1 Merge branch 'master' of github.com:EQEmu/Server into wp 2017-08-31 17:47:33 -07:00
Akkadius
718a2c2205 FixZ on NPC initial spawn to keep NPC's from hopping 2017-08-18 20:23:16 -05:00
KimLS
ffbee0ad1a Merge 2017-08-09 10:42:07 -07:00
KimLS
69c6879ac9 Merge fix 2017-07-22 14:20:40 -07:00
Michael Cook (mackal)
f97693f8e1 Work on spawn filtering 2017-07-19 14:52:04 -04:00
Michael Cook (mackal)
ec77e3a6fd Add show_name and untargetable to npc_types fixes #637
Note the bodytype hack is still there since I was having issues with
some npcs still showing names
2017-07-19 02:17:08 -04:00
KimLS
5f1063acb9 Add pathfinding interfaces, still heavily wip 2017-07-18 00:01:59 -07:00
Akkadius
d47daa2857 Pointer removals 2017-07-11 02:42:06 -05:00
Akkadius
59a2f0cdde Refactor close_npcs to close_mobs for future implementations 2017-07-11 01:58:47 -05:00
Akkadius
ec00daa5be Mob position updates now completely only send to 600 units range defined by Range:MobPositionUpdates
Client updates nearby clients more often because they will disappear after 10 seconds without a position update to the client
This results in a massive reduction in unnecessary traffic as we only update clients of their relevance around them
This also resembles live-like packet sending behavior of positions
2017-07-10 23:03:40 -05:00
Akkadius
aed1959dbe Fix issues with underground NPC corpses - add command #fixcorpses to fix nearby NPC corpses of the player (this should be a seldom need) 2017-07-03 01:53:41 -05:00
KimLS
7189994b78 Many lua things many many things 2017-05-19 22:50:08 -07:00
Akkadius
b5b6145786 Fix initialization issues with loading 'disable_timer' from the database for doors 2017-04-10 19:55:17 -05: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
Akkadius
4b6ce1c19e [Performance] Reworked how client to NPC aggro checks are made
- Before when reverse aggro checks were done (client to NPC), checks would happen every 750 millseconds where a client would
		check an entire entity list with distance calcs and other checks for aggro, with many clients in a zone and many NPC's this would
		add a lot of unecessary overhead. A temporary adjustment on 3/25 was made and upped the check to 6 seconds.
	- Now, there is a new methodology to scanning. The client will build a cache list of NPC's within close range as defined in new rule:
		RULE_INT(Range, ClientNPCScan, 300) and will also get any NPC that has an aggro range beyond that defined range to use in
		the frequent checks for aggro, the result is far less overhead
	- Client scanning changes when moving versus not moving, the client will scan aggro every 500 milliseconds while moving, and
		3000 millseconds aggro check when not moving, with a 6000ms re-fetch for close NPC's
	- A demo of these changes can be found here:
		https://youtu.be/aGroiwLSTVU
2017-03-28 01:30:42 -05:00
Michael Cook (mackal)
f64e1644b1 Take 2 at fixing encounters 2017-03-18 14:11:30 -04:00
Michael Cook (mackal)
bafb199d24 Fix encounters leaking?
I didn't actually test this ...
2017-03-18 01:30:59 -04:00
Michael Cook (mackal)
94d8db4691 clang-tidy said this was a use-after-free
Also, what is this code doing?
2017-03-16 14:10:36 -04:00
Michael Cook (mackal)
7d13475bac Fix ClearAggro xtarget issue 2017-03-02 14:31:48 -05:00
Michael Cook (mackal)
9f4604ec3e Rework how XTarget auto haters work
This should cause the auto haters to be shared with other toons who might be
interested (group/raid) like live.

There maybe some bugs since there is a lot of complex interactions here.
2017-02-17 21:04:48 -05:00
Michael Cook (mackal)
286bfa7af6 Implement the PC/NPC only flag 2016-11-30 20:53:39 -05:00
Uleat
8b5dd58e96 Renamed struct EQEmu::ItemBase to EQEmu::ItemData and class ItemInst to EQEmu::ItemInstance 2016-10-16 05:10:54 -04:00
Akkadius
db380944ac Prevent horses (player mounts) from being depopped during a #repop 2016-08-27 00:46:45 -05:00
Paul Coene
8048239a81 Merge remote-tracking branch 'upstream/master' 2016-08-23 13:55:52 -04:00
Paul Coene
ecdc0f7096 Fixed so mobs that depop at end of pathgrid still path and depop
whiel zones are empty.  This makes these mobs no longer always appear
at start locations for the 1st person in a zone after long idle.
2016-08-23 13:54:51 -04:00
Michael Cook (mackal)
e90e141a79 std::unordered_map::count is much slower than find 2016-08-10 23:51:06 -04:00
Uleat
7c9bd80c1e Changed SendZoneSpawnsBulk to a more like-like behavior 2016-08-02 17:49:08 -04:00
Uleat
579efe83af Renamed EQEmu::Item_Struct to EQEmu::ItemBase to coincide with new inventory naming conventions (re-run shared_memory.exe) 2016-05-27 22:22:19 -04:00
Uleat
71f128731f Renamed and moved SkillUseTypes enumeration to EQEmu::skills::SkillType; eq_dictionary work 2016-05-25 18:50:26 -04:00