* rules for enabling requiring custom files
* shorten default
* variable name
* check account status for enforcing client key
* rule for custom files admin level
---------
Co-authored-by: Paul Johnson <Paul@pjohnsomac-6366.digi.box>
* First pass to enable trader 'Find Trader' functionality
* Move SendBulkTraders out of zoning routines and send as part of the opening of the bazaar search window.
Add zone instance to SendBulkTraders to support multi-instanced bazaars.
This allows task elements to update in any zone when it has an invalid
zone id <= 0. This has the same effect as leaving the zones field empty
except "Unknown Zone" instead of "ALL" will be shown in task windows.
Note that Titanium shows "ALL" for a zone id of 0 despite it being an
invalid zone id. This could be manipulated server side to match newer
clients but there isn't much benefit since any other invalid zone id
below 0 can be used to do the same.
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).
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.
* Add Rule Spells:AllowFocusOnSkillDamageSpells
* Currently, focus mods defaults to 0 when processing spell effect 193.
* The default value for this rule is false.
* When false, the rule will retain the current default behavior.
* When true, the aforementioned focus effects will allow focus effects (185, 459, and 482) to modify spell effect 193.
* Removed undesirable whitespace
* Update spell_effects.cpp
---------
Co-authored-by: Alex King <89047260+Kinglykrab@users.noreply.github.com>
* Loginserver will auto create the opcodes file if it doesn't exist on load.
* Use path manager in login opcodes.
---------
Co-authored-by: KimLS <KimLS@peqtgc.com>
* initial work porting this to upstream
* more
* track complete connect
* it sucks to suck
* Few optimizations
* Move sent_inventory init
* Move var
* Adjustments
---------
Co-authored-by: Akkadius <akkadius1@gmail.com>
* Add an exception process to assigning item serial numbers to correct a bug in the client hot bar clicky system.
* fixed missing guid in replace statement
* added snapshot support
* upate #show inventory command to protect against crash conditions