538 Commits

Author SHA1 Message Date
Akkadius
f9480f2518 Taper down on non-moving client update spam 2017-07-15 17:05:28 -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
855796448c Raid/Group/XTarget HP/Mana/Endurance updates now only send when percentage changes
Raid/Group Mana/Endurance updates should now update real-time once again
Fixed an issue with clients looking like they are 'skipping' when they are moving in view of another client
Fixed an issue with NPC's who are ghosted in plain view of a client when they are not really there
2017-07-11 17:54:46 -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
122e71f4a3 Fix HP/Mana/Endurance updates for group/raids when entering-leaving zone and when initially being added to group/raid 2017-07-10 20:40:32 -05:00
Michael Cook (mackal)
f164833b00 Adventure Merchants don't change heading either 2017-06-24 15:07:58 -04:00
KimLS
31d8336b4b Fix acceptmessages, added exp hooks to luamods 2017-06-10 15:12:31 -07:00
Michael Cook (mackal)
6bdcfaaa71 Forgot ST_SummonedPet 2017-05-18 12:59:23 -04:00
Michael Cook (mackal)
5eba112b7a Fix Crash introduced in last patch 2017-05-18 12:57:04 -04:00
Michael Cook (mackal)
5865948a8b Fix ST_Pet item/AA casts
Modern clients don't require the pet to be targeted
2017-05-17 15:20:27 -04:00
Michael Cook (mackal)
82776deb89 Pet commands only reply to master now (except leader) 2017-05-05 23:52:54 -04:00
Michael Cook (mackal)
d6b61b9163 Implement pet regroup
Tweaks to stop as well
2017-05-04 23:48:47 -04:00
Michael Cook (mackal)
0e96e6689a Pet stop does not clear aggro 2017-05-04 23:08:46 -04:00
Michael Cook (mackal)
fe9fb72dff Update pet command messages 2017-05-04 22:55:17 -04:00
Michael Cook (mackal)
7e2136a5a8 Implement Pet Command Stop 2017-05-04 22:28:48 -04:00
Michael Cook (mackal)
9f8ad1a32c Fix pets ghosting if moving when you hit guard 2017-05-04 20:23:42 -04:00
Michael Cook (mackal)
15d81eee21 Remove unnecessary CastToNPC in PetCommands 2017-05-04 19:42:13 -04:00
Michael Cook (mackal)
84bcb3ac03 Use PetCommands SPA instead of GetAA 2017-05-04 17:48:32 -04:00
Michael Cook (mackal)
8435fa269d Pet Command hack for UF+ 2017-05-04 01:39:24 -04:00
Michael Cook (mackal)
9229ca4f79 Add OP_PetCommandState for ghold/hold 2017-05-04 00:27:42 -04:00
Michael Cook (mackal)
b3d8bcab4a More pet command changes
Tweaks to attack
Initial implementation of ghold
Tweaks to hold
2017-05-03 23:41:06 -04:00
Michael Cook (mackal)
14c9ddf15a Change pet attack to be live like
Classic behavior will be restored as a rule at a later date
2017-05-03 17:27:29 -04:00
Michael Cook (mackal)
3ca8ddbff1 Nuke PET_SLUMBER since they're wrong 2017-05-03 17:05:58 -04:00
Michael Cook (mackal)
baca139f9b /pet leader should only cause NPCs to respond
Client also checks if it's an NPC so we got other bugs here ...
Shouldn't ever be sending this packet with a client targeted ...
2017-05-03 16:35:04 -04:00
Michael Cook (mackal)
cfd1b9a5ee SoS message is only if they would otherwise see you 2017-04-28 13:52:16 -04:00
Michael Cook (mackal)
89587970dd Add invis messages 2017-04-28 13:37:54 -04:00
Michael Cook (mackal)
4ab420ed99 Quick fix for RoF+ AugDistiller 0
This needs more work, but it works for now
2017-04-27 13:36:02 -04:00
KimLS
004c0f7858 Merge fix 2017-04-15 12:18:50 -07:00
E Spause
cb8c3595b7 SoF-era con system. New rule, UseOldConSystem to disable this functionality. 2017-04-15 13:06:46 -04:00
Michael Cook (mackal)
1e61252445 Whoops 2017-04-13 13:28:18 -04:00
Michael Cook (mackal)
53978f0ef9 Exclude client pets from MQ2 target detection
Probably could use some PVP rules but what do I know :P
2017-04-13 13:27:55 -04:00
Michael Cook (mackal)
3098b11080 Limit scale check to only scaling items 2017-04-13 13:26:51 -04:00
Michael Cook (mackal)
6b8c39d388 Disable charm clicks at <= 0 2017-04-13 13:23:53 -04:00
Akkadius
474f59e269 Re-add variable client aggro scanning timers missing from merge 2017-04-12 16:44:49 -05:00
KimLS
281483efc1 Merge of a monster 2017-04-02 20:03:51 -07:00
Michael Cook (mackal)
773932d8f6 Whoops 2017-04-01 17:55:17 -04:00
Michael Cook (mackal)
c5e7b18637 Exclude client pets from MQ2 target detection
Probably could use some PVP rules but what do I know :P
2017-04-01 17:50:27 -04: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
Michael Cook (mackal)
93a6efa95f Limit scale check to only scaling items 2017-03-31 14:41:45 -04:00
Michael Cook (mackal)
e510608a3f Disable charm clicks at <= 0 2017-03-31 14:30:17 -04: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
KimLS
de777fc90f Merge fix 2017-03-26 17:25:01 -07:00
Uleat
f77f996c3f Pass through zone code to fix uninitialized pointer declarations 2017-03-23 04:35:36 -04:00
KimLS
159706efa9 Merge branch 'master' into eqstream 2017-03-12 18:39:15 -07:00
Akkadius
ab372b0f6b - Implemented range rules for packets and other functions
RULE_INT ( Range, Say, 135 )
	RULE_INT ( Range, Emote, 135 )
	RULE_INT ( Range, BeginCast, 200)
	RULE_INT ( Range, Anims, 135)
	RULE_INT ( Range, SpellParticles, 135)
	RULE_INT ( Range, DamageMessages, 50)
	RULE_INT ( Range, SpellMessages, 75)
	RULE_INT ( Range, SongMessages, 75)
	RULE_INT ( Range, MobPositionUpdates, 600)
	RULE_INT ( Range, CriticalDamage, 80)

 - (Readability) Also cleaned up some formatting in messaging and packets so it is easier to understand what is going on with the code
2017-03-12 16:10:53 -05:00
Akkadius
14d09485eb Implement new rule based ranges for various range based packet operations (performance)
- the defaults are set in the code and can be tweaked by sourcing utils/sql/git/optional/rule_values_range_update.sql
- Thanks to mackal for gathering live ranges, thanks to takp for initial numbers
- We would send 200 for combat updates and the client will only display <= range 54 anyways, these should help a lot in spammy combat

RULE_CATEGORY( Range )
RULE_INT ( Range, Say, 135 )
RULE_INT ( Range, Emote, 135 )
RULE_INT ( Range, BeginCast, 200)
RULE_INT ( Range, Anims, 135)
RULE_INT ( Range, DamageMessages, 50)
RULE_INT ( Range, SpellMessages, 75)
RULE_INT ( Range, SongMessages, 75)
RULE_CATEGORY_END()
2017-03-12 14:38:14 -05:00
KimLS
73dc6b090b Merge remote-tracking branch 'origin' into eqstream 2017-03-11 14:51:33 -08:00
Drajor
f26b7a4adc Hacky fix for quantity wrapping when stacked items are sold that have a quantity greater than 255. A better solution will need to implemented long term 2017-03-08 06:22:17 +10:00
Uleat
2690d8fed8 Added inspect buff cases for bots (ZombieSoul) 2017-03-03 17:51:02 -05:00
KimLS
0d1e63c92a Merge remote-tracking branch 'origin/master' into eqstream 2017-02-25 15:31:40 -08:00