Commit Graph

12173 Commits

Author SHA1 Message Date
Alex King 3158386aa3 [Bug Fix] Fix Issue with Perl EVENT_PAYLOAD (#4545) 2024-11-24 17:19:40 -06:00
hg 12ada57ee8 [Code] Fix build with older C++ libraries (#4549)
This adds a compile time concept to determine if from_chars has
floating-point support and uses fallbacks if not.

This is a C++17 feature but support for floats was only added to
libstdc++ with GCC 11.1 and LLVM libc++ in 20.0 (unreleased).
2024-11-24 17:18:36 -06:00
Mitch Freeman 7a841c11c5 [Bug Fix] Players could become flagged as a Trader when they were not trading (#4553) 2024-11-24 17:17:01 -06:00
Mitch Freeman a49d1446b7 [Bug Fix] Fix for sending money via Parcel, then changing your mind (#4552) 2024-11-24 17:15:18 -06:00
carolus21rex b2d0fa6a2f [Bug Fix] Fix Strings::Commify bug with #mystats (#4547)
* Fix a formatting bug with #mystats

When using values larger than 1,000, we were calling commify on a string that already had commas. This resulted in the value 1005 looking like 1,,005.

* Update mob.cpp

---------

Co-authored-by: Alex King <89047260+Kinglykrab@users.noreply.github.com>
2024-11-22 16:23:48 -05:00
Mitch Freeman 62ac015fff [Bug Fix] Fix an edge case with augmented items inside parceled containers (#4546) 2024-11-20 21:17:04 -05:00
Mitch Freeman 4977a7c2e0 [Bazaar] Further refinements for instanced bazaar (#4544)
Resolves
- Parcels being delivered with incorrect item
- Inspecting an item from the bazaar window showing the incorrect item
2024-11-16 15:14:17 -06:00
nytmyr e6aeb01ddf update and expand ^itemuse options and add lore checks 2024-11-15 13:26:00 -06:00
nytmyr 5c73581f90 Add AllowBotEquipAnyClassGear to bot trades 2024-11-14 20:09:19 -06:00
nytmyr 677a9fdfe0 Add more checks to bot names to prevent spacing or invalid characters 2024-11-14 20:08:57 -06:00
Mitch Freeman 9967384ab8 [Fix] Fix for mult-instanced bazaar zones (#4541)
* Enable bazaar for multiple instances.

* Enable buyer for multiple instances.

* Update to buyer/barter for multiple instances and attuned items.
2024-11-14 19:44:03 -06:00
Mitch Freeman d3da2e5501 [Fix] Fix for bazaar search of containers. (#4540) 2024-11-14 19:32:19 -06:00
Chris Miles 33f5c4c6a7 [Bug Fix] Fix issue where NPC's are being hidden as traders (#4539)
* [Fix] Fix issue where NPC's are being hidden as traders

* Fix

* Update mob.cpp
2024-11-14 19:15:03 -05:00
nytmyr 1e7739012f Make command errors/failures yellow 2024-11-13 22:19:11 -06:00
Akkadius e4aa6a6957 [Release] 22.59.1 v22.59.1 2024-11-13 20:52:46 -06:00
Chris Miles e4d812f4b4 [Release] 22.59.0 (#4538) v22.59.0 2024-11-13 20:08:03 -06:00
nytmyr 2e0840db72 add bot camp timer to prevent /camp exploits 2024-11-13 10:10:47 -06:00
nytmyr 6d97536e38 Add loregroup 0 bypass for lore conflicts for bots like clients 2024-11-12 22:19:16 -06:00
hg bcedfe7032 [Quest API] Add Native Database Querying Interface (#4531)
* Add database quest API

API functions are named to be similar to LuaSQL and perl DBI

New connections are made for Database objects. These can either use
credentials from the server eqemu_config or manual connections.

* Add option to use zone db connections
2024-11-12 20:01:18 -06:00
Paul Johnson c1df3fbcb0 [Rules] Add Rule for restricting client versions to world server (#4527)
* add rule for supported clients, unsupported client packet

* whitespace

* PR feedback - Update client.cpp

* PR Feedback - Update client.cpp

* Update client.cpp

* Update client.cpp

---------

Co-authored-by: Paul Johnson <Paul@PJOHNSOMAC-6366.digi.box>
2024-11-12 11:00:22 -05:00
nytmyr 464c69190d correct and tweak all combat positioning and combat range 2024-11-11 22:09:05 -06:00
nytmyr 8989c6f21b apply ranged setting on spawn to show correct weapons 2024-11-11 22:09:04 -06:00
nytmyr 9dd11a598f Add AllowAIMez to allow bot auto mez to be toggled 2024-11-11 22:08:53 -06:00
nytmyr c50d72ccf0 add PercentChanceToCast rules for AE and group spells 2024-11-11 22:08:53 -06:00
nytmyr 8fa429c02d add sanity check to campCount on ^camp 2024-11-11 22:08:52 -06:00
nytmyr 351ada12a5 correct GetBestBotMagicianPetSpell 2024-11-11 22:08:52 -06:00
nytmyr 18b6fc2667 adjust spell hold checks to rely on caster and
Implement pet resist buffs and pet damage shields
2024-11-11 22:08:51 -06:00
Akkadius 011e1d05e7 [Hotfix] Check if the mob is already in the close mobs list before inserting 2024-11-10 23:19:40 -06:00
nytmyr d3d53c5a74 remove circle/teleport, tweak depart 2024-11-10 10:14:23 -06:00
nytmyr cf26a476fd remove spelltype checks from clients causing bad data 2024-11-10 10:13:44 -06:00
Akkadius 3f0f95976c [Hotfix] ScanCloseMobs - Ensure scanning mob has an entity ID 2024-11-10 06:47:42 -06:00
nytmyr 9f9c25c653 passivecheck response 2024-11-09 22:07:35 -06:00
nytmyr 0d970844d3 add passive stance checks to commands and loading/saving. shouldn't be ` 2024-11-09 22:00:20 -06:00
nytmyr 938c72619c only load client spell types for clients 2024-11-09 21:59:52 -06:00
Chris Miles 77de9619b5 [Databuckets] Add database index to data_buckets (#4535)
* [Databuckets] Add database index to data_buckets

* Update database_update_manifest.cpp
2024-11-08 22:26:00 -05:00
Mitch Freeman 20d3ab2ac5 [Bug Fix] Bazaar two edge case issues resolved (#4533)
This update resolves two bazaar issues that have been reported.
- If parcel delivery is used to purchase an item, and the seller has several of the same items, that have various charges, the item would not be removed from the db.  This allowed for incorrect purchases.
- If a player 'reclaims' an alt currency item that they also have for sale with an active trader,  the item would remain for sale, and be reclaimed.  This impacted custom alt currency items that were no trade.
2024-11-08 22:15:12 -05:00
Chris Miles 0ea47fadee [Performance] Improvements to ScanCloseMobs logic (#4534)
* [Performance] Minor improvements to ScanCloseMobs

* Remove timer checks one level up to reduce branching

* Reserve memory in m_close_mobs to avoid frequent re-allocations if not already reserved.
2024-11-08 17:48:39 -06:00
nytmyr 57e9b62a48 Add viral, fear, stun, knockback, gravityeffect support to bots 2024-11-08 10:59:01 -06:00
nytmyr 2d1b34d0cb command cleanup 2024-11-08 08:41:18 -06:00
nytmyr 31a4f053b5 bot movement cleanup and tweaks, move casterrange to distanceranged 2024-11-07 16:34:29 -06:00
nytmyr c22d687d72 misc command and rule cleanup 2024-11-07 16:34:29 -06:00
nytmyr 775511c935 more target validation for bots to prevent pets from getting hit with AEs and pets trying to attack invalid targets 2024-11-07 16:34:28 -06:00
nytmyr 2dfa1681c4 Make rogue/monk evade logic more accurate to players 2024-11-06 07:30:24 -06:00
nytmyr 32a10f4219 Implement and rewrite stances 2024-11-06 00:30:40 -06:00
nytmyr 7d8f4d9849 fix formatting in cazictouch 2024-11-06 00:20:41 -06:00
Chris Miles 1ce51ca3b0 [Release] 22.58.0 (#4532) v22.58.0 2024-11-05 22:02:32 -06:00
hg 25ef3d2cdb [Code] Update perlbind to 1.1.0 (#4529)
- Adds a perl::ref alias for perl::reference

- Optimizes array return pushes by accessing SV* values directly instead
  of using operator[] scalar_proxy

- Allows functions with a perl::hash parameter to accept hashes with any
  scalar key type instead of requiring explicit string keys

  e.g., foo(123 => 1) will now work on functions accepting a perl::hash
2024-11-05 20:14:29 -06:00
hg 95249889a6 [Code] Add mysql prepared statement support (#4530)
This adds support for using prepared statements for MySQL queries. It is
intended for use in a database quest API but it can be used in source
with some caveats:

 - It uses exceptions for error handling instead of returning a fake
   result that needs checked. Usage must be wrapped in try/catch.

 - DBcore has a connection mutex which indicates the connection might be
   shared with other threads. This mutex is locked for certain stmt
   operations in an attempt to make it safe to use with multi threaded
   connections.

 - Prepared statements should only be used on the main thread since the
   internal logging is not synchronized.

 - Unlike the current query API which retrieves all results as strings,
   results are stored in buffers that represent the db field type.
   Getter functions are available to retrieve values as desired types.
2024-11-05 20:12:17 -06:00
nytmyr c16e1e5954 misc cleanup 2024-11-02 22:05:55 -05:00
nytmyr cd4ebb5a73 Rewrite ^followd command and remove squared values from command 2024-11-01 14:58:37 -05:00