84 Commits

Author SHA1 Message Date
Shendare
9e5bfabf91 Augmentation Feature Patch
RoF+ clients now support the built-in adding, swapping, destroying, and
removing of augments in equipment, updating an equipped item's look in
case of ornamentation changes. All clients will now verify that the
proper distiller (or a perfected distiller for RoF+) is being sent for
consumption for safely removing augments. Hard-coded item IDs for
distillers have been replaced with checks on item types.
2015-11-09 22:43:25 -08:00
KayenEQ
79c9862131 Few more AA updates to use database instead of hard coded values. 2015-10-09 14:04:39 -04:00
KayenEQ
2cf59ae2f2 Updated a few AA effects to use database values instead of hardcoded values. 2015-10-09 13:08:24 -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
N0ctrnl
c4a7acb6d1 Update tradeskills.cpp 2015-03-25 12:04:03 -05:00
Akkadius
99baba4762 More cleanup of some QueryDatabase references that no longer need auto results 2015-01-19 05:38:23 -06:00
Akkadius
5ab131dcd6 More cleanup of some QueryDatabase references that no longer need auto results 2015-01-19 05:35:28 -06:00
Akkadius
75ea162c2b Remove Duplicative MySQL Error: Error in DisableRecipe query '%s': %s 2015-01-19 05:25:59 -06:00
Akkadius
dfec624b8d Remove Duplicative MySQL Error: Error in EnableRecipe query '%s': %s 2015-01-19 05:25:56 -06:00
Akkadius
c4ebfa8890 Remove Duplicative MySQL Error: Error in LearnRecipe query '%s': %s 2015-01-19 05:25:53 -06:00
Akkadius
50fd74a2d2 Remove Duplicative MySQL Error: Error in Client::LearnRecipe query '%s': %s 2015-01-19 05:25:44 -06:00
Akkadius
590634ebef Remove Duplicative MySQL Error: Error in UpdateRecipeMadecount query '%s': %s 2015-01-19 05:25:37 -06:00
Akkadius
21ad8e1e7c Remove Duplicative MySQL Error: Error in GetTradeRecept success query '%s': %s 2015-01-19 05:25:33 -06:00
Akkadius
636f090ce3 Remove Duplicative MySQL Error: Error in tradeskill verify query: '%s': %s 2015-01-19 05:25:26 -06:00
Akkadius
71497f0674 Remove Duplicative MySQL Error: Error in SendTradeskillDetails query '%s': %s 2015-01-19 05:25:22 -06:00
Akkadius
0133dd5688 Remove Duplicative MySQL Error: Error in TradeskillSearchResults query '%s': %s 2015-01-19 05:25:17 -06:00
Akkadius
0c5a902032 Remove Duplicative MySQL Error: Error in HandleAutoCombine query '%s': %s 2015-01-19 05:25:08 -06:00
Akkadius
0d9b6703a6 Rename debug.h to global_define.h, update cmakelists and such 2015-01-19 04:12:09 -06:00
Akkadius
467b359d0c Moved all EQEmuLogSys:: enum references used in Log.Out to a namespace 'Logs' for shortening of syntax 2015-01-18 02:20:16 -06:00
Akkadius
c025765283 Renamed DoLog to Out as the aggregate logging function for simplicity of use and shortened syntax of Log.Out 2015-01-18 02:00:15 -06:00
Akkadius
1c048cb1d1 Renamed DebugCategory to DoLog as the aggregate logging function for simplicity of use and shortened syntax of Log.DoLog 2015-01-18 01:54:09 -06:00
Akkadius
ec7fd9b4e7 Consolidate 'LogType' Normal logs over to 'LogCategory' 2015-01-18 01:32:18 -06:00
Akkadius
e691735a2d Consolidate 'LogType' Error logs over to 'LogCategory' 2015-01-18 01:30:25 -06:00
Akkadius
7dbde36b03 Rename reference logger to Log 2015-01-18 00:41:18 -06:00
Akkadius
132fbbb0c6 Rename LogDebugType to DebugCategory 2015-01-16 03:09:02 -06:00
Akkadius
509bd2d652 Convert 'TRADESKILLS' debugging _log to logger.LogDebugType 2015-01-12 22:55:44 -06:00
Akkadius
a92233240c Replaced Normal calls 2015-01-10 15:55:10 -06:00
Akkadius
b76e179d75 Fix spacing 2015-01-10 15:47:36 -06:00
Akkadius
6844645dfb Replace LogFile->write(EQEmuLog::Error, with logger.logevents(EQEmuLogSys::Error 2015-01-10 15:44:35 -06:00
Akkadius
be381b4e56 Renamed EQEMuLog class to EQEmuLog 2015-01-08 19:46:28 -06:00
Uleat
34ab3e10f5 Added some nullptr checks for ItemInst* in a few places (tradeskills.cpp - particularly augments - needs a better review) 2014-12-23 10:14:45 -05:00
Akkadius
c5c33f6f49 tradeskills.cpp header include cleanup 2014-12-15 18:57:09 -06:00
Trevius
200027bf89 (RoF+) Implemented the 6th Augment Slot for Items.
Player Corpses now saved attuned settings for Items.
Renamed IsInstNoDrop() and SetInstNoDrop() to IsAttuned() and SetAttuned() respectively.
2014-12-15 17:55:23 -06:00
Michael Cook (mackal)
395be050a3 Switch random function to std::mt19937
Added class EQEmu::Random
Functions:
EQEmu::Random::Int(int low, int high)
EQEmu::Random::Real(double low, double high)
EQEmu::Random::Roll(int required)
EQEmu::Random::Roll(double required)
EQEmu::Random::Reseed()

For zone, you will access the random object through the zone object
ex.
	zone->random.Int(0, 100);

Int returns a random int between low and high
Real returns a random double between low and high
Roll(int) returns true if Int(0, 99) < required is true
Roll(double) returns true if Real(0.0, 1.0) <= required is true
2014-12-01 18:13:12 -05:00
akkadius
4a597a2b38 tradeskills.cpp #include cleanup 2014-11-29 16:48:48 -06:00
Michael Cook
cf1370b9e2 Spelling matters! 2014-11-27 22:56:40 -05:00
Michael Cook (mackal)
6f67577115 Crash fixes 2014-11-27 22:30:44 -05:00
Natedog2012
4e3842b9d8 Detransformation of mold type ornamentations. 2014-11-27 16:14:04 -05:00
Natedog2012
daec5bde66 Item Transformation now works! 2014-11-26 17:23:04 -05:00
Leere
e7681f1b49 Fix for GetTradeRecipe results variable overload instead of reuse 2014-11-19 09:40:08 +01:00
Arthur Ice
e338f801ea DisableRecipe converted to QueryDatabase 2014-10-08 16:05:52 -07:00
Arthur Ice
6221c1f8ab EnableRecipe converted to QueryDatabase 2014-10-08 16:04:19 -07:00
Arthur Ice
5dac9a944b LearnRecipe converted to QueryDatabase 2014-10-08 16:02:30 -07:00
Arthur Ice
97c1c479f9 GetTradeRecipe converted to QueryDatabase 2014-10-08 15:55:12 -07:00
Arthur Ice
21d6865e8c GetTradeRecipe converted to QueryDatabase 2014-10-08 15:43:50 -07:00
Arthur Ice
e2894ef2aa SendTradeskillDetails converted to QueryDatabase 2014-10-08 15:05:24 -07:00
Arthur Ice
7656b9b928 TradeskillSearchResults converted to const std::string query instead of const *char query 2014-10-08 15:00:34 -07:00
Arthur Ice
0fde0fbd23 removed unneeded querylength parameter from TradeskillSearchResults 2014-10-08 14:41:34 -07:00
Arthur Ice
d5955da08c TradeskillSearchResults converted to QueryDatabase 2014-10-08 14:38:38 -07:00
Arthur Ice
e2333e671b HandleautoCombine converted to QueryDatabase 2014-10-08 14:28:40 -07:00