386 Commits

Author SHA1 Message Date
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
0a8b21d4ab Merge branch 'luamod' 2017-06-19 14:45:08 -07:00
Michael Cook (mackal)
4e15364d42 Fix auto completing to wrong thing ... 2017-06-13 21:48:02 -04:00
Michael Cook (mackal)
35c194e2eb Fix SE_FcSpellVulnerability 2017-06-13 21:33:42 -04:00
KimLS
7189994b78 Many lua things many many things 2017-05-19 22:50:08 -07:00
Michael Cook (mackal)
6e70d12b0a Add Mob::SayTo_StringID so we don't have to spam 2017-05-05 23:45:14 -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)
7e2136a5a8 Implement Pet Command Stop 2017-05-04 22:28:48 -04: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
Akkadius
a06d5fab89 [Performance] Adjust HP marquee call checks 2017-03-28 15:49:13 -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
cfdbca6f12 Fix for unreliable packets (kind of a hack but it works) being flagged as corrupt 2017-03-20 00:22:50 -07: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
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
0736ce43bd Merge branch 'master' into eqstream 2017-02-06 21:46:34 -08:00
Michael Cook (mackal)
d8519bc270 Weapons allow NPCs to facestab 2017-01-31 17:25:05 -05:00
Uleat
984a009fbb Temp fix for bot armor color issue - may break armor dying (not tested) 2017-01-29 04:35:03 -05:00
Michael Cook (mackal)
2db6464d14 Fix last commit 2017-01-28 22:46:02 -05:00
Michael Cook (mackal)
c17ac67296 Tweak #showstats so bots don't skip stuff 2017-01-28 22:43:07 -05:00
Michael Cook (mackal)
cdf0d5deb0 Fix crash 2017-01-26 18:04:59 -05:00
Michael Cook (mackal)
8c6fefa33e Update #showstats 2017-01-15 16:32:15 -05:00
Michael Cook (mackal)
9e824876ba Combat Revamp - MAJOR BREAKING CHANGE
This commit makes combat much more live like. This is based on a lot of parses
done by TAKP and myself. There are numerous things based on dev quotes and
hints. Pretty much all combat has changed, spell effects correct, stacking
correct, etc.

This is the fist stage of the revamp, I will be trying to remove some code
duplication and make things generally cleaner.

Server ops will have to rebalance their NPCs. AC actually means something now.
Rough recommendations?
Level 50 "classic" trash should be no more than 115.
Classic raid mobs should be more 200+ etc
Other "classic" NPCs should be a lot lower as well.
PoP trash probably shouldn't exceed 120 AC
PoP raids should be higher
Devs have said the vast majority of NPCs didn't exceed 600 AC until very
recently. The exceptions were mostly raid encounters.

There really isn't a good "default" for every server, so this will be up to
the devs to find where they want their server stats to be.
2017-01-15 00:03:02 -05:00
KimLS
2447c38c82 Working on world <-> zone communication needs a ton of work really need to rewrite how world works with zones. 2017-01-02 22:38:47 -08:00
Michael Cook (mackal)
26985496d1 Fix Shield Specialist related SPAs 2016-12-08 22:36:47 -05:00
Michael Cook (mackal)
b9fefc95e8 Enforce 4 sec Sneak Attack rule fixes #569
Spells flagged with SNEAK_ATTACK requires you to be hidden for
about 4 seconds before you can cast them
2016-10-25 23:19:20 -04:00
Uleat
db7f0cc977 Fix for model glitches resulting from a recent patch 2016-10-23 15:28:20 -04:00
Uleat
04f4fd652b Renamed class Inventory to EQEmu::InventoryProfile 2016-10-17 04:59:00 -04:00
Uleat
bfd07b1010 Added class EQEmu::InventorySlot 2016-10-16 21:36:39 -04:00
Uleat
8b5dd58e96 Renamed struct EQEmu::ItemBase to EQEmu::ItemData and class ItemInst to EQEmu::ItemInstance 2016-10-16 05:10:54 -04:00
Michael Cook (mackal)
013f7cfd21 Set no_target_hotkey in Mob ctor
Fixes UBSan error
2016-10-03 01:35:11 -04:00
Michael Cook (mackal)
4cb7d9a352 Remove ability for charmed NPCs from summoning
These rules do not appear to be true on live
They also don't look to have ever been true?
2016-09-22 00:32:01 -04:00
Akkadius
32c4c360bd Add IsHorse to default false in Mob constructor 2016-08-27 01:21:23 -05:00
Michael Cook (mackal)
039e0fbb83 NPC innate procs overwrite TargetType to ST_Target 2016-08-12 21:53:14 -04:00
Michael Cook (mackal)
69db67efe5 Remove extra save 2016-08-02 23:32:37 -04:00
Michael Cook (mackal)
ef2c17748e Implement extra spell gems!
New limits:
    Tit: 9
    SoF: 9
    SoD: 10
    UF: 12
    RoF: 12
    RoF2: 12

The SoF client doesn't actually support 10 like SoF should
RoF/RoF2 actually have 4 extra broken spell gems in the UI. They don't work and
will likely crash your client

Quest stuff assumes you are passing in valid slots.
(note the old default of 10 should be 22)

There are still somethings to do like clean up the memmed spells if one switches
to an older client that doesn't support as many as their previous client.
2016-07-31 17:16:23 -04:00
Michael Cook (mackal)
5f588934a9 Make decaying spell bonuses not depend on CaclBonuses being called some other way
This just sets a flag that will tell us we need to recalc bonuses every tick

Before these kind of depended on it being caused some other way
2016-07-23 13:55:36 -04:00
Uleat
542d454fe0 Added rule 'NPC:UseClassAsLastName' to second spawn packet handler 2016-07-05 15:20:46 -04:00
Uleat
3d61df253d Added rule 'NPC:UseClassAsLastName' to allow certain npcs' class names to be hidden 2016-07-03 19:44:45 -04:00
Michael Cook (mackal)
54de212214 Implement OP_CancelSneakHide
Didn't test every client, but they should all work
2016-06-30 17:50:31 -04:00
Michael Cook (mackal)
a64343689c Refactor loot response a bit
Invis is dropped after ALL error checking now
Identified all the response types
2016-06-30 14:00:18 -04:00
Uleat
cd8cd90a38 Implemented EQEmu::TextureProfile 2016-06-01 08:54:26 -04:00
Uleat
ae3c98c692 Implemented EQEmu::TintProfile 2016-06-01 04:58:52 -04:00
Uleat
ea8f81feec Converted enumeration MaterialSlots to EQEmu::textures::TextureSlot 2016-05-31 22:07:02 -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